reorganize server files
reorganize lib files
huge restructuring: use roots to compile client

- removes a ton of code whose function can be replaced by roots
- separates out server and client
- organize utils
set up test suite

- remove old tests
- add test project
- set mocha opts
set up and test initial RootsCMS object
configure travis ci
fix build, add travis badge to readme
add istanbul
update bin to start roots-cms object
add coveralls
fix breaking bug when loading jade dynamic content
fix incorrectly passing tests
implement and test stopping the server
refactor config and server

- attaches config and server to cms object as instantiated objects that are passed the cms object when created
- simplify config loading
- wrap express server in own Server object
add view content integration tests

- stub config and server tests
- add test project content fixtures
- test that content is loaded and viewable through browser
- set up test/features with mocha
remove node 0.8 support
update fixtures

- add project without a cms.json config
- update test_project to have a cms.json and basic_auth set
unit test config and move defaults into class var
remove ineffective tests

The integration tests in `test/feature` are giving false positives.
The issue seems to be caused by some incompatbiilities between
Marionette and Zombie JS. Marionette view templates are not rendered in
the DOM at the moment Zombie JS makes assertions on the expected
content.
move server unit tests into server file