added more utility functions, route grouping