Major Update.

Some small things left to do, but most of the core is ready to go!