feat(backend): support for HTTP basic authentication

details:
* backend now enforces HTTP Basic Authentication on every single endpoint
* backend remains a stateless RESTful API
* backend associated unit tests
* work builds on PassportJS ready to add any type of authentication strategy
  such as HTTP Digest or OAuth
* frontend support for authenticating on each request
* documentation update

CAVEAT: Basic Authentication exchanges base64 encoded credentials in clear text
and would be vulnerable to easy attacks. It is critical to properly setup
encryption using SSL/TLS which address this concern greatly