Bug 958437 - Build static directories as part of compile instead of libs and tools; r=gps

--HG--
extra : rebase_source : dc082b833582972af27adab1e553e4b079fac458
Bug 958368 - Remove the code paths to load a custom Mesa/llvmpipe build instead of system OpenGL (sadface) - r=jgilbert
Bug 958369 - 1/5 - Make GLFeature a typed enum - r=jgilbert
Bug 958369 - 2/5 - Make GLVendor and GLRenderer typed enums - r=jgilbert
Bug 958369 - 3/5 - Make SharedTextureShareType and SharedTextureBufferType typed enums - r=jgilbert
Bug 958369 - 4/5 - remove the ContextFlags enum - r=jgilbert
Bug 958369 - 5/5 - Make ContextType a typed enum - r=jgilbert
Bug 958375 - 1/9 - Make SurfaceType a typed enum - r=Bas

Specifically:
  r=Bas for manual changes
  f=Bas for automatic changes
See attachments on the bug for the specific breakdown.
Bug 958375 - 2/9 - Add a variant of MOZ_ENUM_CLASS_ENUM_TYPE that works on template parameters - r=Waldo
Bug 958375 - 3/9 - Add a variant of EnumSerializer that works on MFBT typed enums - r=nfroyd
Bug 958375 - 4/9 - Make SurfaceFormat a typed enum - r=Bas

Specifically:
  r=Bas for manual changes
  f=Bas for automatic changes
See attachments on the bug for the specific breakdown.
Bug 958375 - 5/9 - Make FilterType a typed enum - r=Bas

Specifically:
  r=Bas for manual changes
  f=Bas for automatic changes
See attachments on the bug for the specific breakdown.
Bug 958375 - 6/9 - Make BackendType and NativeSurfaceType typed enums - r=Bas

Specifically:
  r=Bas for manual changes
  f=Bas for automatic changes
See attachments on the bug for the specific breakdown.
Bug 958375 - 7/9 - Make Font-related enums typed - r=Bas

Specifically:
  r=Bas for manual changes
  f=Bas for automatic changes
See attachments on the bug for the specific breakdown.
Bug 958375 - 8/9 - Make remaining Moz2D enums typed - r=Bas

Specifically:
  r=Bas for manual changes
  f=Bas for automatic changes
See attachments on the bug for the specific breakdown.
Bug 958375 - 9/9 - NS_SIDE_TOP was inadvertently used as the (1<<NS_SIDE_TOP) bit - r=roc
Bug 939715: TypedObject PJS API implementation (r=nmatsakis).
Bug 939715: TypedObject PJS API tests (r=nmatsakis).
Bug 958075: Request longer timeout in test_extra_inherit_initial.html, so that it won't hit the timeout limit on B2G debug mochitest runs. (test-tweak only, no review)
Merge m-c to inbound.