initial work on api authentication
add instance method app.authenticate as wrapper for api_auth.authenticate
fix bug in api auth

Prevent the skd from blowing up if a bearer token with and invalid
format is supplied. Also, make sure to always go through the entire
oauth flow to prevent time based attacks.
add test deps to tox.ini
add test deps to setup.py
add tests for api auth
add apiKeys to cache regions
fix api keys creation
add python 3.4 to tox
python 3 compatibility for api auth code and tests
Add py 3.2 compatibilty

We always make sure to feeed bytes to b64decode.
The reason being that only at 3.3 was it
refactored to accept both str and bytes.
make sure jwt tokens are up to spec and the same for all sdks
update README/Travis with correct environment variable names

Names were changed in d47ba18e
rewrite live tests

Rewritten mostly from scratch, split into multiple modules,
case classes and test methods, for easier maintenance.
modify setup.py test/livetest commands for new live tests

Using a hacky workaround for the fact that py.test seems to ignore
the live tests for some strange reason - until that's solved,
we enumerate all the live test files.
rename live tests files to have test_ prefix so py.test picks them up
tweak test so it works correctly under Python3
update test invocation from setup.py now that test discovery works
update tox config for the new live tests configuration
live tests: use basic auth for all tests not testing auth itself

This is a temporary workaround until we find and fix issue preventing
Travis live tests from working properly.