Moved methods to prototype, included addEventListener method