Add options `overridesDist` and `swaggerUiDist`

`overridesDist` allows explorer users to provide their own set
of overrides, replacing customizations provided by the explorer module.

`swaggerUiDist` allows explorer users to provide their own fork
of swagger-ui module, while having explorer customizations still
applied.

The existing option `swaggerDistRoot` remains unchanged, it allows users
to either:
 - provide overrides on top of explorer overrides, or
 - provide a full swagger-ui distribution, effectively disabling
   `overridesDist` and `swaggerUiDist`.

Close #66.

/to @raymondfeng please review
/to @ritch @STRML the option names are not great, can you advise better names?
/cc @shelbys