Some restructuring to the build command, allow for an explicity default build, added more error checking