Simple, immutable models based on hashes