made Model::attributes() non static again

- allows to have dynamic definition of attributes depended on the
  instance
- there was no real need for it to be static. Places that used it static
  have been refactored.

fixes #1318