add README
move generate! methods in the generator classes