refactor controlled ball functionality into separate classes