Fast series expansion seems interesting to me. Since I'm familiar with Sympy's series implementation, we can have the code skeleton up rather quickly. However I don't want to be limited to just that. If there is some topic that figures higher on your priority, I'd like to explore that too. As there is some time left for the application phase, I can start reading now if need be. I'll try to finish a substantial amount of work before I apply.
The tough part is to figure out how to implement it --- I want to ideally avoid adding more and more virtual methods, we can use the visitor pattern (but it's kind of cumbersome and limited) or we can use our new type system and do single dispatch, it should be hopefully as fast as virtual methods. The point is that, just like the visitor pattern, it will allow us to have the series implementation completely separate from the core, and we can play with different implementations and so on.
Also, we should create a class Series, that knows how many terms there are, and knows how to manipulate and print the O(x^n) symbol, but unlike sympy, I wouldn't introduce the O symbol on its own.