ArrayProxy learns itemControllerClass.  See discussion at #1637.

Please do not accept this pull request: if the approach looks good let me know
and I'll also update the documentation.