refactor stateless git functions into node module

pulled them out of worker.js and into git.js
now same code is usably by both frontend and backend
refactor to use javascript Pad API. closes #7.

decouples the handling of state (text and selection) with the act of interfacing
with the UI to get and set it.
fix web worker location bug; disable persistance

worker now uses an ID sent from the main and only starts continuous pull upon
receiving this ID.

additionally, persistance was throwing an error, so I commented out the lines
which start the service in MakePadServer.

closes #8
don't hook up text area to pad if using PhantomJS

this allows cleaner testing, ensuring any Pad javascript clients the tester
creates isn't interfering with the textarea.

closes #9
use long polling instead of websockets

- workers now use long polling XMLHttpRequests to communicate with the server
- workers now directly make requester, rather than redirect through main
- server now blocks on getDiff rather than return a channel to block on
- removes dependence on jQuery; nice
- actually fixes #9; there was a bug in the previous commit
- closes #10
use same git library as frontend/create working go client & node server

- used barebones http for the node server and make shift router
- used standard go net/http library
- put in git_test.js as example of how to load in git functionality
require only phantomjs/ignore node modules
comment/refactor to replace "diff" with "commit" in Go
correctly spell persistence
Merge pull request #12 from jdhenke/joe

Mad 824 Work at Starbucks