Fix issues with MSAA surfaces and mapping
As reported in #52, programs might try to read back from an MSAA surface, and if a staging resource is needed, then the direct copying of MSAA data to the buffer is not possible, so inject a resolve blit.
While touching the resource code also fix an issue with the wrong assumption that all staging resources can be mapped directly.