Optimizations

I optimized the placement context searches to only parse once and to use
binary searches to find the correct entry. Speedups for compiling have
gone up nearly 60% in some cases.