decorator pattern looked fun so decided to start on it and come back to iterator laterlkto iterator later. forgive me being all over the place.