push current code for review
- refactoring throughout
- removed some obsolete/unused functions