Convert builder images to go

Builder images converted to go commands. Main builder code in pkg/build/builder
Generally embedding a pointer to a struct for anything except trivial wrapping is frowned on.  Why can't this be an interface, and why does it have to be nested like this?