Rust LodeRunner store entire map, including spaces build horizontal movement when loading build vertical movement when loading snap horizontal movement to correct row except when falling