Introduce attribute to override singular form of a column's phpName

(as discussed in #637)

This PR introduces a 'phpSingularName' attribute for columns in the schema file. This attribute is then used whenever the singular form of a phpName is required (e.g. for generating a 'hasAlias' method, operating on an array-typed column named 'aliases').

The default hasn't changed: when not specified, the singular form defaults to rtrim($phpName, 's').