First commit

Please don't blame, code refactoring to be done... but it's working...