Terrible commit of half finished stuff.