Refactor and break up rt module into appropriate subdomain functions 

The rt modules has become too large and has many different APIs; this PR is a first stab at breaking it into more self-contained and small sub-modules, as a part of the this RFC;

https://gist.github.com/kellymclaughlin/f28b75ac295b3d397ef0