Refactor buildRegion to simplify building from different regionConfig types

Reopening (originally #1602) against v2.1 per @samccone's request in gitter. This fixes #1562.
Yeah, but I feel so much more clever and pedantic with `_.bind` :stuck_out_tongue_winking_eye:

The straight closure is more readable; my underscore trigger finger is just twitchy.