Clean up defensive programming and rewrite intro