Maybe monad fix and tests
organized solution into folders
made hashmap tests more explicit