worked on some todos, bug fixse