added pole spanning transformations and tests,
refactored transform methods to be general,
still breaks tube select