controller: Much better error handling