Improved logging
Added JoinBuilder and used as base class for name builder