Merge Request!

Merge Request!
============
All features and code refactoring done!