refactor to remove circular dependency, isolate view functions
add skeletal job resource
add skeletal volume resource