Fixes two problems with how mailboxes are created

- If no mailbox has been specified, and stashing IS requested by the actor then a mailbox that supports bounded/unbounded stashing should be created.
- If no mailbox has been specified, and stashing is NOT requested by the actor, then the default mailbox as specified in the config should be used. The default mailbox in default config should be UnboundedMailbox.

This is what has changed
- In Mailboxes.GetMailboxType fallback to the default mailbox as defined in config, instead of "" (which defaults to UnboundedMailbox).
- Allow Props.Mailbox to return an empty string
- Default mailbox in pigeon.conf should be UnboundedMailbox and not ConcurrentQueueMailbox. Since UnboundedMailbox inherits ConcurrentQueueMailbox this will not have any effect on existing code.
Merge pull request #434 from HCanber/mailbox-stashing-fixes

Fixes two problems with how mailboxes are created
Update CONTRIBUTING.md
Merge remote-tracking branch 'upstream/dev' into dev