part way through adding move-marble
updated implementation to use only :red and :blue
updated test to use :red :blue
marble moved to correct position
extracted update-state