* Needed in Lagom to be able to have separate object mappers with different
config for exernal and internal usage.
* Can also be good to be able to have different config for json and cbor
serializers, or different for remote messages and persisted events.
* Pass in binding name when creating the serializer if it has a matching
constructor
* Serialization identifiers loaded from config via the binding name instead
of class name, for JacksonSerializer.
* Copied from Lagom, with the following differences
* Jsonable and CompressedJsonable not included
* pcollection and guava modules not enabled by default
* added scala and afterburner modules
* JSON, CBOR and Smile options (different serializers)
* JMH benchmark
* jackson version 2.9.9
* test polymorphism
* serializer for ActorRef
* Address serializer
* FiniteDuration serializer, same as java.time.Duration
* use blacklist from Jackson databind against gadgets
* disallow binding to open ended types, such as java.io.Serializable
* Configurable ObjectMapper ser/deser features
* testing date formats with WRITE_DATES_AS_TIMESTAMPS on/off
* ActorSystemSetup for ObjectMapper creation
* and possibility to lookup created ObjectMapper via ObjectMapperProvider extension
* createObjectMapper without ActorSystem, needed by Lagom test
* add basic docs
* skip Scala 2.13 for akka-serialization-jackson for now, until the Jackson
Scala module has been released