LPS-31179 move the current implementation into it's new location
LPS-31179 refactor to an interface
LPS-31179 Re-order methods only
LPS-31179 isolate the framework through an adaptor