Adding Creational / Builder impl and tests