idiff can return higher order derivatives

** Syntax was changed ** : dependent variables must be listed
in a sequence after y and be passed as "y". Whichever variable
is listed first is the y value that will be used. To differentiate
assuming that all variables are x-dependent, one could pass

idiff(eq, [y] + list(eq.free_symbols), x)

Any duplicates in y (when passed as a list) are ignored.