Differential equations with linear coefficients - First implementation and improvement in the coding style of ode.py

    
    Solves a differential equation with linear-coefficients.

    The general form of a differential equation with linear-coefficients is
    y' + F((a1*x + b1*y + c1)/(a2*x + b2*y + c2)) = 0,
    where a1, b1, c1, a2, b2, c2 are constants and (a1*b2 - a2*b1) != 0

    This can be solved by substituting x = x' + ((b2*c1 - b1*c2)/(a2*b1 - a1*b2))
    and y = y' + ((a1*c2 - a2*c1)/(a2*b1 - a1*b2)). Making the given
    substitution reduces it to a homogeneous differential equation
    (see the docstring of ode_1st_homogeneous_coeff_best(), ode_1st_homogeneous_coeff_subs_indep_div_dep()
    and 1st_homogeneous_coeff_subs_dep_div_indep())

    Examples
    ========

    >>> from sympy import Function, Derivative, pprint
    >>> from sympy.solvers.ode import dsolve, classify_ode
    >>> from sympy.abc import x
    >>> f = Function('f')
    >>> df = f(x).diff(x)
    >>> eq = (x + f(x) + 1)*df + (f(x) -6*x + 1)
    >>> dsolve(eq, hint = 'linear_coefficients')
    [f(x) == -x - sqrt(C1 + 7*x**2) - 1, f(x) == -x + sqrt(C1 + 7*x**2) - 1]
    >>> pprint(dsolve(eq, hint = 'linear_coefficients'))
                      ___________                     ___________
                   /         2                     /         2
    [f(x) = -x - \/  C1 + 7*x   - 1, f(x) = -x + \/  C1 + 7*x   - 1]


    References
    ==========

    - Joel Moses, "Symbolic Integration - The Stormy Decade",
        Communications of the ACM, Volume 14, Number 8, August 1971, pp. 558
    
Apart from solving the differential equation of type linear coefficients, this PR with the help of @smichr improves the coding style of ode.py to a great extent.