refactoring zenoss class for more general router