Improved State Model and Improved Theme Updating

Still can't save themes to database but you can at least change your
client-side experience
Added documentation file
Merge branch 'master' into josh
Updated Release Plan
added test plan
Upload user manual plan
Merge branch 'master' into josh
Upload user manual plan