A trait for asset sources, which provides methods for loading bytes.
This is called to check if an asset has been modified.
Returns the modification time as seconds since
Loads the bytes given a path.
The id should always use
/ as separator in paths.
Returns both the result of
modified as a tuple.
There's a default implementation which just calls both methods,
but you may be able to provide a more optimized version yourself.