more code documentation, readme edit