=act #13678 #15149 Reply with ActorIdentity(None) from deadLetters
=rem #13923 Fixes hanging ActorSystem termination

* occurs on failed RemoteActorRef initialization
* fixed shutting down Netty when startup fails
* fixed registering ActorSystem's termination hook before ActorRefProvider
  initialization
* added new test case (checking if no threads left after a failed actor
  system initialization)

(cherry picked from commit 5e978220a5b0bd5c49668bb4b4db3808f27c6ce2)

Conflicts:
	akka-actor/src/main/scala/akka/actor/ActorSystem.scala
Merge pull request #15343 from akka/wip-13678-identify-deadLetters-patriknw

=act #13678 #15149 Reply with ActorIdentity(None) from deadLetters
Merge pull request #15344 from akka/wip-13923-backport-patriknw

=rem #13923 Fixes hanging ActorSystem termination (backport)
=con #15285 wrap message in RouterEnvelope before routing

PubSubMediator uses router which always unwraps RouterEnvelope messages.
However unwrapping is undesirable if user sends message in
ConsistentHashableEnvelope. Thus PubSubMediator should always wrap user
messages in RouterEnvelope which will be unwrapped by the router, leaving
user message unchanged.

Also disallow consistent hashing routing logic in pub-sub mediator.
=con Use separate probes in ReliableProxyDocSpec
Merge pull request #15352 from akka/wip-ReliableProxyDocSpec-patriknw

=con Use separate probes in ReliableProxyDocSpec
Merge pull request #15300 from 2m/pubsub-wrap-before-routing-23

=con #15285 wrap message in RouterEnvelope before routing
+per #13944 Send RecoveryComplete message at end of recovery

Fixes #13944
Merge pull request #15350 from akka/wip-13944-send-marker-message-after-recovery-finished-ban

+per #13944 Send RecoveryComplete message at end of recovery
=per #13962 Close LevelDB snapshots to avoid resource leakage
=per #13898 Make LocalSnapshotStore directory creation more robust
Merge pull request #15329 from akka/wip-13962-investigate-leveldb-compaction-issue-ban

=per #13962 Close LevelDB snapshots to avoid resource leakage
Merge pull request #15374 from akka/wip-13898-failed-SharedLeveldbJournalSpec-ban

=per #13898 Make LocalSnapshotStore directory creation more robust
+per #15229 defer for PersistentActor

* Deferred events are not persisted, thus will not participate in replays
  etc. If users want events to be persisted, they can simply use
  `persistAsync` instead.
* This, 3rd, rewrite extends the Persistent hierarchy by a top level
  trait "Resequenceable", which is used to mark every event to be sent
  in sequence back to the PersistentActor. These are split into
  NonPersistentRepr or PersistentRepr, and acted upon accordingly.
* defer is guaranteed to be called, even after persistence failures
* Includes docs updates for java/scala/java8

Resolves #15229
Depends on #15227
Merge pull request #15339 from ktoso/per-defer-persistentactor-ktoso

+per defer for PersistentActor
+per #15327 Add ReliableDelivery trait
remove final of around methods, and let deliver send when not recoveryRunning
Support for snapshots
Add UnconfirmedWarning message, and some more stuff