ACCUMULO-1958 Make Range constructor safe

The public six-argument Range constructor lacked a check for the stop
key being before the start key. This change adds the check, plus a
similar, new protected constructor without the check for use by
constructors which do not need it. Checks are also included for
construction from Thrift and population via readFields.

Signed-off-by: Eric Newton <eric.newton@gmail.com>
ACCUMULO-1984 Rework interruption for instance implementations.

This change removes the throwing of InterruptedException from several
classes, simplifying the API. Some of the affected classes now also
implement java.io.Closeable.

Signed-off-by: Eric Newton <eric.newton@gmail.com>