Split js files for 1.12.0

Fixes gh-694

- Current having an issue with the release task under node 0.10.1 with:
`(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.`
- Did this as a ton of commits for discussion, but it can be squashed
- Added watch task as it helps when making changes to have grunt pick up the changes and re-run the tests