Adding event mixin and unit tests