Added SQL storage backend

- Added Storage ABC
- Moved Ledger class to storage/ledgercli.py
- Added SQL requirements to requirements.txt
SQL, GTK

- Made the storage model slightly more flexible
- Made a small P-o-C GUI application in GTK
- Polished accounting.client
- models.Transaction.id is now a str
- Fixed transaction.id marshalling for storage.ledgercli
Added ./bin/gtkclient
Addded tests/ folder with example payloads
Updated API documentation
Added SQL requirements
[gtkclient] Updated layout
Add compiled documentation to tree
[gtkclient] GtkBuilder-powered gtkclient
[storage] Proper ABC
[sql] Late init_app of SQLAlchemy

in order to be able to run sql/models.py alone (e.g. sphinx autodoc)
[web] Late init of storage engine.