The reasoning behind this was to ensure memory / process awareness.  There is a dispose() (ie. stop) method (part of all `LaunchManager` delegates) which currently does nothing, so I figured that a start() (instantiate) method was in order.  I can start on use and get rid of start(), then let users call dispose() or I can automatically call dispose when done compiling.  Launcher wants a dispose(), so I vote for the former.  Thoughts?