yea one again, this shouldn't be determined by a string but the actual type.. let me keep thinking, I imagine it will be some sort of wrapper around the Map (which shouldn't be a Map[String, Any], we should use hte type system not abandon it lol)

```scala
trait Content[T] {
  val assets: Map[String, T]
}

// in manager define a add method for each content type (engrains the previous casing on the contentType string into the type system
def add(assets: Content[TextureAsset]) { .. }
def add(assets: Content[SoundAsset]) { .. } 
```