Bumper model with Player interface

Obsoletes pull request 33.  Rebased patches on top of latest master.