Convert elixir_flex_lexer.BodyTest to Parameterized

Use JUnit 4's Parameterized test runner to eliminate the need to write
each test method and instead just parameterize on the charSequence,
expected token type, and expected lexical state.  I also added a check
that all of the char sequence was consumed by checking that another
advance returns null.
Convert YYInitialTest to Parameterized

Push parameterization down to Test.
Parameterize SigilTest
Parameterize InterpolationTest

Had to moving closing brace test to a interpolation.EndTest because it
had unique state setup.
Parameterize GroupHeredocStartTest
Parameterize/Theorify AtomStartTest

Convert the assertWholeAtom tests to atom_start.WholeTest theory while
other tests become parameterized in atom_start.FragmentTest.
Parameterize AtomBodyTest
Parameterize named_sigil tests
Parameterize group Tests
Parameterize group_heredoc_end.quote Tests

Had to add ability to check that entire buffer is _NOT_ consumed in
TokenTest#token to cover the pushback of terminators of the wrong quote
type.
Parameterize group_heredoc_end.sigil tests
Parameterize group_heredoc_line_body Tests
Parameterize group_heredoc_line_start.quote Tests
Parameterize group_heredoc_line_start.sigil Tests
Lands #8, JUnit optimizations