Update Sched.java to be in line with sched.py at version 2.0.14

These commits update Sched.java to be in line with upstream 2.0.14.

I decided to compare both files, line-by-line, to find and fix any discrepancies between them. A little ambitious, I know, but I think it was worth it since I found a few errors and it's helped me understand how it works a little better.

The first three commits remove unused code and re-arranges things in the same manner that they appear in sched.py. This is to make comparing them easier.

Using the blame tool, I figured out which commit(s) that a set of differences came from and assigned them to a commit here, so they mostly follow upstream order. I grouped all the new sibling/burying ones into one commit.

I didn't inspect the non-libanki methods, but that can be saved for another day. I think the ```DeckNameCompare``` class is where the deck order is decided, so someone interested in fixing the deck ordering bug raised earlier might want to start looking here.

Leech detection is probably broken as of these commits. It's on my TODO list.