overhaul
updated examples etc