Identified Design Pattern

Updated version based on last commit. - I reverted my initial commit.