updates for better ipython integration