cleaner inheritance step 2

starting to push all build functions into the classes.