Reduces runtime allocation by freezing string literals by default. We could also remove a ton of manual `.freeze` calls, however the ruby supported version is 2.2 and the magic comment only targets 2.3+.
* Use Puma env detection helpers in tests. * Check only once if environment is windows. Same as #jruby?
Focus on removing @options. Delegate all actions to launcher.