Implement IndirectActorProducer #201

- Implementation of enhancement #201 
- unit tests
- small clean up of the Props class

This looks strange. If `TActor` has a parameterless constructor why do you want to specify `args`?