fix P31
add runner.hs for easy testing
restructure / refactor some solutions