Use AbstractListenerRegistration

This gets rid of home-grown class and documents that the close()
contract is not properly implemented.

Change-Id: I183ba502dc60e0017511d2726b8e8b4b2f1f3c2d
Signed-off-by: Robert Varga <rovarga@cisco.com>
Merge "Use AbstractListenerRegistration"