CYB-50 Adding API infrastructure.  Enscapsulates all calls to the Canvas...

... API in this new class

  * Uses Faraday & Net::HTTP::Persistent (keeps connections open, to save setup/teardown)
  * Requires setup in config/secrets.yml with API keys from Canvas (see README.md)
  * Some specs do actual calls, so for them to run it requires an instance of Canvas.
  * Some rewrite on README.md
@christianv  There are two reasons:

1. Don't hide incorrect paths while in development mode.  When time comes to release to production, it is more of design or business decision what to do on an incorrect path.  Since this app should only get requests from our own front-end (or providing API for the JavaScript) or from Canvas (LTI requests), this is unlikely to happen.
2. While in development mode, Rails now provides a nicely formatted routes listing on the page on an incorrect URL (or one can explicitly visit /rails/routes path, but having that route glob killed that route).