Added new features and changed repo structure