Enhancement auth wsgi

- Adds a new Auth Middleware that can replace the Keystone Middleware with the advantage of not requiring an administrative token
-- Preferably has its own redis instance for caching the storage catalog

- Note: Any injection marked "Deprecated" by Keystone Middleware is not supported here.

Note: Tested with this basic uwsgi application:
```python
import logging
from oslo.config import cfg
from eom import auth

def proxy_app(env, start_response):
    log = logging.getLogger(__name__)
    for k in env.keys():
        log.debug('Header: {0:} - {1:}'.format(k, env[k]))
    start_response('204 OK', [('Content-Length', '0')])
    return

conf = cfg.CONF
conf(project='eom', prog='eom')

lf = logging.FileHandler('uwsgi_proxy.log')
lf.setLevel(logging.DEBUG)

log = logging.getLogger()
log.addHandler(lf)
log.setLevel(logging.DEBUG)

redis_client = auth.get_auth_redis_client()
app = auth.wrap(proxy_app, redis_client)
```
You might want to try using msgpack here instead. It is faster and more compact than JSON. A few tips:

* Instantiate a Packer object in advance, rather than calling msgpack.packb() to save a few CPU cycles
* When packing, set encoding to UTF-8 and enable the use of the bin type, so that you can round-trip Unicode strings.
* Likewise, when unpacking, set encoding to UTF-8 so that the library will decode strings properly

For example:

    _pack = msgpack.Packer(encoding='utf-8', use_bin_type=True).pack
    _unpack = functools.partial(msgpack.unpackb, encoding='utf-8')