ACCUMULO-1986 Add data integrity checks to Key and Mutation

This change adds checks to the constructors for Key and Mutations which
take in Thrift data structures to ensure that required fields are not
null. These checks prevent creation of invalid objects from modified
Thrift structures.

Signed-off-by: Eric Newton <eric.newton@gmail.com>
ACCUMULO-1986 merge to 1.5.1-SNAPSHOT
ACCUMULO-1986 merge failed to pull null pointer checks from 1.4
Merge branch '1.5.1-SNAPSHOT' into 1.6.0-SNAPSHOT
Merge branch '1.6.0-SNAPSHOT'