Chunk speech synthesis to work around Chrome bug

See:
http://stackoverflow.com/questions/21947730/chrome-speech-synthesis-with-longer-texts
Refactor JS a bunch

- Split voice processing and assistant communication into two classes
- Refactor Voice, UI updates, and server post / response handler to JS
  "plugins"
- Remove some extra crap (unused css file, etc)
Remove Assistant.js from root (it was moved to the js/ dir)
Merge pull request #4 from Roave/feature/refactor-js

Refactor JS a bit