An interface that supports finding k best and/or k good
parses and parse sampling.
These operations are specified by separate methods,
but it is expected that many parsers will return
an UnsupportedOperationException for some of these methods.
This has some other methods that essentially provide a rich
parser interface which is used by certain parsers in lexparser,
including other convenience methods like hasParse() and
getBestScore().

getKGoodParses

Get k good parses for the sentence. It is expected that the
parses returned approximate the k best parses, but without any
guarantee that the exact list of k best parses has been produced.
If a class really provides k best parses functionality, it is
reasonable to also return this output as the k good parses.

Parameters:

k - The number of good parses to return

Returns:

A list of k good parses for the sentence, with
each accompanied by its score