controllers fleshed out