New button and listener structure
Completed program.

New listener structure to make up for misunderstandings on how listeners work and their restricted access to objects.