I added a few more things

refactored the code (a bit)
added more settings
added a few todos and bugs!