- Rough draft commit

- Completed functionalities
- Completed UI
- TODO: clean up code