#1 backend implementation

Implemented Tasks #1 and #13
Should be ready to merge into master