Github + Refactor

Complete refactor and added support for Github and bumping dependency versions.

Also improved documentation.

@quintona @benl23x5 

This also closes #1, #3, #4, #5, #8.
If we don't use version.sbt then it won't work. The whole sbt stuff is a bit brittle.