requirements: qrcode removal

* qrcode removed from main requirements;

Signed-off-by: Adrian-Tudor Panescu <adrian.tudor.panescu@cern.ch>
upgrader: change to module-aware engine

* Changes upgrader to load upgrades from all installed modules.

* Changes upgrade naming convention to be compatible with
  invenio modules.

* Changes upgrader to use SQLAlchemy models for querying
  instead of run_sql.

* Changes recipe creation to use module import paths as input
  instead of system paths.

* Relaxes constraint on cross-graph dependencies to allow
  inter-module dependencies.

* Removes pre-upgrade check for legacy custom templates.

* Adds tests of recipe creation.

* Fixes PEP8 issues.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
base: add inveniomanage database diff command

* Adds command to diff database schema against installed
  database models.
Grunt: typeahead.js fix

Signed-off-by: Adrian-Tudor Panescu <adrian.tudor.panescu@cern.ch>
Merge remote-tracking branch 'lnielsen-cern-github/pu-upgrader-fixes' into pu
Merge remote-tracking branch 'adrianp-github/poo' into pu
restful: fix extension initialization

Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
deposit: plupload filetable fix

* Displays uploaded files in deposition form.

Signed-off-by: Adrian-Tudor Panescu <adrian.tudor.panescu@cern.ch>
upgrader: add auto-generation of upgrades

* Adds auto-generation of upgrades via Alembic.

* Adds dependency on Alembic to perform database schema
  operations.

* Refactors code structure by splitting engine module into
  separate modules.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
JSONAlchemy: WIP