Reorganized code and updated readme with todo list

cleaned shit up