added interface abstractions for serveral builder methods