Super mega giga big commit - fixing controllers (working correctly now) and client interface.