Classifying order of nested functions

The homogenous_order() function in ode, doesn't presently find out the order of functions like tan((7*x + 3*y) / (2*x + 5*y)) , due to the inability of seperatevars to separate out t, when it is inside a function

Presently:

    >>> homogenous_order(tan((7*x + 3*y) / (2*x + 5*y)) , x , y) 
returns None.

I think such nested functions should be classified and the order should be given as zero. Do have a look at my fix.