An event implementation for D