working on controller; has theoretical bare bones