config: ServiceOptions O(1) assert time in the common case
Check if the key array passed in the constructor is identical to the key
array passed to assertRequiredOptions(). This takes O(1) time if the key
arrays have the same underlying storage pointer, which is the common
case.
If the arrays have a different order but are otherwise identical, the
slow path is taken instead. The comparison will add O(N) overhead in
addition to the overhead of the array_diff() calls.
Change-Id: Icb9040ab66286b72a270e84f910cb578bed105b0