Call method to get new element adapter for testing.

Don't refer directly to the element adapter constructor.
Shrink & consolidate redundancy in function create/assign pattern.
Make separate methods for adding kinds of listeners.

This will allow us to separately override #addInputListener