merged from html5rocks
merging world_wide_maze
resolved conflict