Complete overhaul, everytihng works now.