Added support for individualizing endpoint instances

@johnsimons @SimonCropp review please


Left to do:

- [ ] Add doco
use `String.Empty` instead