Working commit, all basic functionalities implemented