Done over one half of hartl tutorial ch.9