clean up code, add more readme descriptions