Further simplification and separation of asset pipeline

- Use a Prefix decorator for AssetPipelines to keep things DRY.
- Un-couple helper functions from the AssetPipeline type