All 3 features implemented, code clean up
Cleaned up files