rename files; refactor to classes