Implemented lazy initialization for listeners container(NSHashTable). Added assertions in convenience constructor and designated initializer to validate input params.
Implemented convenience constructor & designated initialiser unit tests.