- Changed namespaces around, so that there is moe.server and moe.client and moe, rather than moe, moeserver, and moeclient.
- Moved some of the shared code stuff [uids in particular] from the server file and into a shared file.
- Removed the old Empire class.
- Added a "HasUID" interface, rather than it being an autogenerated member of an abstract base class.
- Added new Empire, Unit, Profession, Tile, Path, and Race classes; most of which are empty.
- Added data members, enumerations, events, and properties for the Unit class. It's now about... 60% done for just the data and event scaffolding.
I'm going to try and focus a good deal on events for much of the data. They've worked out pretty well in other code I've written to allow extensibility to code without modification. The idea being that a Unit itself will have various events that can occur to it, which the server and client then react differently to.
Not some novel approach to many of you I bet... I wish I had the time and money to go back to school to learn this properly.