Use a binary search for sparse switch statements.

Added a couple of edge cases to test 015.

For bug 2119870.
3 files changed