Pull path traversal out of GCanvas and into Motion