With akka 2.4's SerializerWithStringManifest, things can get much simpler: we don't need a PersistedCodec anymore.
I think it would make sense to rename the current StaminaAkkaSerializer to something like CodecBasedStaminaAkkaSerializer (for compatibility with 'old' persisted events and use cases where you do want a codec) and create a new StaminaAkkaSerializer based on SerializerWithStringManifest.
Now that keeping the metadata separate from the actual serialized data becomes common, it's unclear whether the Persisted case class still makes so much sense: we could skip creating an intermediate Persisted instance, and make separate methods on Persister to produce the manifest and the serialized data independently.
Persisters could be refactored to hold a Map[String, Persister] to look up persisters by manifest, which could make it much simpler and more efficient.