Capture host specific information and make it accessible

We are now capturing host specific information in a class called `HostInformation`.

This then is exposed as a property of the `UnicastBus`.

### Overriding HostId and/or DisplayName
```c#
class OverrideHostInformation : IWantToRunWhenConfigurationIsComplete
{
    public UnicastBus UnicastBus { get; set; }

    public void Run()
    {
        var hostInformation = new HostInformation(myNewDetermisiticGuid, "My new display name");

        hostInformation.Properties.Add("Another", "FooBar");
        hostInformation.Properties.Add("Special", "I'm amazing");

        UnicastBus.HostInformation = hostInformation;
    }
}
```

### Adding extra properties
```c#
class OverrideHostInformation : IWantToRunWhenConfigurationIsComplete
{
    public UnicastBus UnicastBus { get; set; }

    public void Run()
    {
        UnicastBus.HostInformation.Properties.Add("Another", "FooBar");
        UnicastBus.HostInformation.Properties.Add("Special", "I'm amazing");
    }
}
```