refactored files and several to do points