refactoring much of the admin handling out of the root plugin and into a separate class