Massive overhaul of code, and functionality.