Ignore empty catalogue numbers in ninjatune data, don't error out with old-style catno format
Filter barcodes better, by ignoring anything that doesn't look numbery
Added SQLAlchemy. Defined basic models.
Using Editor model instead of raw SQL in user loader.
Merge branch 'mapping-import-fixes'

* mapping-import-fixes:
  Filter barcodes better, by ignoring anything that doesn't look numbery
  Ignore empty catalogue numbers in ninjatune data, don't error out with old-style catno format
Moved SQL with basic retrieval queries into models.
Strip names being passed to ninjatune artist or label item identifiers.
Strip, not split. Hurf durf.
Moved SQL queries from frontend views into models.
Added disabled backref.
Added back psycopg2 requirement.
Moved remaining SQL queries into models.
Removed psycopg2 stuff.
Converted CSRF model to use query API from SQLAlchemy.
Removed unused DB_CONNECTION variable from settings.py
Converted ItemLink model to use query API from SQLAlchemy.
Converted Item model to use query API from SQLAlchemy.
Converted some functions in ItemData model to use query API from SQLAlchemy.
Added command for DB tables creation into manager.py
Cleanup.