installation: extra requirements autodiscovery

* Allows user to install Invenio with optional dependencies using
  `extras_requires` option in `setup.py`.
  NOTE: you can use `pip install -e .[dev]`

Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
travis: package install using pip

Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
Flask-Testing: install 0.4.1 from GitHub
requirements: move optional PIL, qrcode and python-openid