restructure tests

* created test/local for tests that can only be run locally
* created test/remote for tests that can run remotely or locally
* moved most api level tests to test/remote
* much more of the test suite can run remotely now :)
remove unreachable code
increased test coverage
remote tests working against prod
increased test coverage
fixed lint errors before @pdehaan flips a table
added grunt to npm test-all
Merge pull request #506 from dannycoates/test-refactor

Test refactor