separate all admin functionality in admin namespace