Some refactoring of global options.

Review Request #2446 - Created July 9, 2015 and submitted

Benjy Weinberger
stuhood, zundel
- Makes global option registration be via an Optionable, for uniformity
  with task and subsystem options.
- Move the bootstrap option registration to the same file as the rest
  of the global options registration, for clarity.
- Removed some special-casing of the global scope.
- Removed the buildroot argument to the options bootstrapper. It was only
  used so that could substitute a placeholder for display in
  the builddict. We now do this with a simple string replace. I prefer
  this slightly hackier method, isolated to just inside, than
  having it leak into the signature of options bootstrapper.
- This change is to support a future change in which registered options will
  know their category (global, subsystem, task), which in turn will
  be used for better help and builddict generation.

CI passed here:

Eric Ayers
Benjy Weinberger
Benjy Weinberger
Review request changed

Status: Closed (submitted)

Change Summary:

Submitted as 204482179e1756c159234bff3fce51067f214b7e.