small tip: make the engine to fit a game, building an engine without a game is often a one way trip to a programmer wankfest that results in lots of code and cool tech but nothing usable
also interesting to see other approaches to the problem of games in general... this is quite high level stuff and the choice of tech has cut a lot of the implementation details out of the code (although imo still way to much in each file, but there we go) - quite different to what I normally consider 'game' or 'engine' programming - although obviously it is.
will fav and try to actually use when i get home from work. :)