Refactored launcher functionality into own class, added an Interface for the callback handler and an Exception for if it's used incorrectly. Original functionality still works but now it's separate from the Form.