finished first pass of arcade. Needs some refinement