Implemented register logic
new files committed