fixed case where build is called in different places
code tidyup
fixed class privacy
fixed problems with read only arrays being created
fixed issues with matched responses