Restructure getHandler to optimize plain value path
Simplify then while retaining good perf and mem characteristics

Fix same-tick progress cases. Fix semigroup concat when both promises
reject. Fix jshint warnings.