Added Mailbox Suspend and Resume
Fixes Become and Unbecome to work as Akka.

Become(receive, discardOld: true) means that the current receive delegate is replaced by the specified delegate
Become(receive, discardOld: false) means that the current receive delegate is persisted before the the specified delegate is put in place. To revert to previously persisted delegates Unbecome() may be called.
discardOld is an optional parameter which defaults to true.
ActorSelection bug
Merge pull request #146 from HCanber/become-unbecome-fix

Fix Become & Unbecome
Add new class Actor
Add PartialReceive, that returns true if the message was handled
Make Actor abstract
Rename Actor to ReceiveActor to not collide with namespace Actor
A ReceiveActor with no receive configured should publish UnhandledMessage
Create MatchBuilder
Create PartialActionBuilder that captures args and returns a PartialAction

Given a func: Func<T,T1,...,Tn) and args: [A1,...,An] returns
PartialAction<T>:  value => func(value, A1, ..., An)
Move creation logic to factory methods in PredicateAndHandler
Create MatchExpressionBuilder (needs more tests)
Add some more test for MatchExpressionBuilder and PartialActionBuilder and fix bugs detected by writing tests.
Add tests for MatchBuilderSignature
Add CachedMatchCompiler
Remove parameterless constructor and uncomment null check
Start to add implementation to ReceiveActor
Restructure code in ReceiveActorTests
Specify a timeout on expectMsg, so that failing tests time out