Rewrite the level arc reading code
Rewrite the level arc reading code

The new strategy is as follows:
- Check at the given angle, slightly above the arc. If not white, reject
the angle.
- Check at the given angle, slightly below the arc. If not white, reject
the angle.
- Check too far above and below the arc. If either is white, reject the
angle. (This is so that we don't mistake the gym/buddy overlay for a
level marker.)
- Finally, check the angle on the arc. If it's not white, the arc is
likely covered there, so reject the angle. Otherwise, accept the angle
as a candidate.

Once all candidate angles have been collected, find the highest
candidate, and return the average of all candidates no more than 2
degrees below the highest one. We can't just average across all
candidates, as things overlapping the level arc will cause false
positives (I'm looking at you, Gyarados...) 2 degrees were chosen as an
upper bound for the angle subtended by the level marker on the arc.

Googulator/goontap,jbatonnet/goontap