The Reflectron: Exploiting geometry for learning generalized linear models