UPDATE Rearranged and removed unused files.