cleaning-up the repo and added basic features and an example