Add Immutable AVL Trees

Originally from http://justinmchase.com/2011/12/13/immutable-avl-tree-in-c/
Add ChildrenContainer

To use the immutable avl trees ActorRef must be IComparable so I implemented that for ActorRef and ActorPath
Add CAS helper methods for transforming values atomically
Make it possible to check inner exceptions when filtering exceptions using TestKit's EventFilter
Add overload to inline actors that forwards the Actor Context to the config-action, to be able to create children.
Change property IAtomicCounter<T>.Next to to a function

When debugging, the debugger calls Next, which increases the value.
Better to have it has Next() instead.
Switch to use ChildrenContainer in ActorCell
When handling Failed message ignore if child is invalid
Suspend children on failure

This is done in the new ActorCell.HandleInvokeFailure
Implement ActorCell.FaultHandling.cs
Implement more tests in SupervisorHierarchySpec
Fix comments
Merge pull request #495 from HCanber/supervisorHierarchySpec-324

SupervisorHierarchySpec #324