Use Inflector and PropertyAccess when possible

This PR allows form purposes to contain underscores.