CDK-177: Removing additions to PartitionStrategy.

Earlier commits for CDK-177 added keyFor methods to replace
partitionKeyForEntity, but Keys are going to be in the SPI rather than
the API. This means that the Key class defines these methods (through a
Builder) rather than exposing them from PartitionStrategy. This commit
removes the new keyFor(Object) methods and marks newKey as private. It
also removes references to keyFor(Object). keyFor(Marker) remains
because there is no equivalent method to get a PartitionKey; this should
be removed when PartitionKey is replaced.
CDK-177: Adding FieldPartitioner#valueFor(Marker).

This allows the FieldPartitioner to handle extracting values from Marker
objects rather than having another class handle it by querying name,
source name, type, and source type.
CDK-177: Adding Key.Builder class.

Key.Builder creates Keys for a PartitionStrategy, which is given when
instantiating the builder. It provides build(Marker) and build(Object)
methods that replace PartitionStrategy#keyFor.