This release is a large rewrite of the rec crate that causes major breaking changes. Although some of the previous functionality is lost, it is intended that much of it will be replaced and the benefit of getting more control over the allowed syntax and implementations outweighed the cost.