added events
gave canPlay a saner datatype
added Ord to CanPlay