Check for duplicate IDs before adding methods.
Rewrite listener handling to be easily extensible.
Add @OnItemClick listener.
Rewrite handling of listener generation to be more dynamic.