improved mode modularity
moved outline to python.py;\neach mode now must implement it's own outline