refactor shot navigation to use promises throughout
mobile styling - started, but pretty rough