Store all marks as sha1s instead of integer local revisions.

This should help with quite a few future advanced endeavors and make the entire app more stable in the long run
Transparently upgrade marks-hg from integer revision to SHA1, closes #16
Massive refactor to split monolithic file into python package.

It's commits like this that make you glad you wrote a big test suite.
Update some missing 2013 copyright notices