Jason,
The reason for the SymPEP is that the PR's for this functionality engendered a lot of discussion, with no final resolution. Part of the issue is that the functionality does require making some of the base classes (e.g. `class Function()`) equation aware. I do that in my package by extending the function class and then rerunning the `class funcX()` statements for all functions in `function._all_`. This is a bit sketchy, but works. Additionally, there is disagreement on how some of the calculus operations should behave.
Anyway, I would be happy to get this functionality into sympy proper, but the community needs to come to a consensus on what functionality to include and how. I have not yet been able to generate that consensus.
Thanks for the encouragement.
Jonathan