Implemented basic features and some creep into other issues

Closes #1