Improve performance.
Clean & consolidate.
Convert to python 3.