Add API error handling; refactor clientside tests

+ `requestAPI()`` now returns two arguments, an error and the API
  contents
- Removed requirement for ``NODE_ENV=test`` for tests
* ``NODE_ENV=test`` will still act the same
* Clientside tests now use ``config.get("repos")`` for the main 'does
  the list work?' test
* Standardised repos are still worked for the Travis display test
* Repo cycling in tests are now asynchronous
* The form append test now uses ``torvalds/git`` to make it easier to
  differentiate that test from one of the Github API tests