SHA256 everywhere

Follow up #645. cc @mastahyeti 

* Move to SHA256 as default digest class
* Clarify byte digest vs hexdigest on Asset
* Cache raw byte digest and convert to hex or base64 when needed
I'll still get the other reserved escaping stuff done here for query value components.