This will be useful to decouple ComponentPartial and Asset objects from their Halcyon counterparts
An Asset is technically not a template, it may be hosted via a CDN or others
A ComponentPartial is also different, it is read only and doesn't require caching