Initial Scanner implementation, and over 6k tests (1.3k still failing).