Refactor level generation; add gizmos