improving test
#13 adding a NoProgress null object
#13 adding measure of progress to the builds so we can deal with those polymorphically rather than do an instanceof check