Refactoring to make subclassing easier for subclasses which want to initialize their own director.

Signed-off-by: Levi Brown <levi@grokers.net>