Commit first attempt at AbstractController