Ok cool, I've always used the same algorithm, with relatively subtle changes for each observer in the strategy pattern (autoloader for example).
I'd compare notes.... if I had any

Just thinking out loud as of now. Thinking of a way to interface with each rule so that it actually means something to the Scheduler seems a bit tricky since from where I'm sitting either:
a) The scheduler makes "proposals" then calls all the observers and asks for a boolean true. Repeat until successful.... aka Brute Force

b) The scheduler knows about a limited set of rules itself and therefore the rules are all just combinations of a small subset
I haven't thought about it for too long though, I might just start TDD'ing it and see where I get. Unless we come up with something here?
Off to bed now though... it's 3:40 here and I'm returning from a night out feeling a bit geeky that the first thing I did when I got in was jumped on the forum
EDIT | Errmm... observer == strategy. Apologies, it's late
