add wrapper class for path and transform, refact event wiring