Fix look ahead key handling in JSONRestReader

The simple sequence

  isKey()
  isKeyAnyOf("a")

always failed with an IllegalStateException, because the first call
of isKey() read the key implicitly and set sequenceState to
EXPECT_VALUE. The second call to isKeyAnyOf() then failed because
of the unexpected state.
isKey() and isKeyAnfOf() now ignore the sequenceState and instead
check that either a nextKey is available or the next token in the
input stream is a JsonToken#NAME.

More tests have been added for various variants of implicit and
explict key and value skipping.

Change-Id: If94394746248231eff75eedc27a5fd667d351556
Signed-off-by: Michael Ochmann <michael.ochmann@sap.com>
2 files changed