Starting the major rewrite