Change behaviour to align with vanilla Keystone

The current code enforces that the tenant name is the same as the VO
name. This code removes this constrain, so that the user should use the
tenant discovery to get his tenant in advance.
Move code to keystone_voms.core and update docs

The code has been moved to keystone_voms/core.py so that it is not
anymore in __init__.py

The documentation has been updated to reflect the latest changes.
Update tests to work with Grizzly.

The unittests can now be executed against a Grizzly environment. Added
instructions to run them.
Added help to options and fixed sample configuration
Bump version to 2013.1-1 and added download_url
Check for user membership in mapped tenant

If the autocreate users option is set we sould add the user in each of
the tenats that he is able to access.

Fixes bug 1
Add unittest for bug/1
Changes to work in Havana V2
Updated readme and documentation
Move to pbr
Added debian packaging stuff
Update tests in stable/havana

- keystone.test has been removed, so we need to use keystone.tests
  instead.
- Added unittest for user already in tenant
- PEP8 changes
Style and minor sintax changes

Comply with pep8, remove unused imports
Add build information for http://travis-ci.org

This commit will run the unittests along with the keystone vanilla unit
tests. Also, a pep8 check will be executed.
Changed build status to show stable/havana branch
Merge pull request #18 from alvarolopez/stable/havana

Minor syntax changes for stable/havana
Fixed tests file to adher to havana internal api #11

(cherry picked from commit 2c3e60fa133ff58e98253bc1a3624af94871a6e9)

Conflicts:
	tests/test_middleware_voms_authn.py
Update README.md

Use IFCA travis-ci.org account.
Fixed tests file to adher to havana internal api #11

(cherry picked from commit 2c3e60fa133ff58e98253bc1a3624af94871a6e9)

Conflicts:
	tests/test_middleware_voms_authn.py
Improved testing so that we only run the module's tests