Changed the way the launcher call is made by passing in the function/scope at initialization, rather than relying on the DOM always being in the container.
Added the launcher api unit tests.