D3DBackend: Don't recompute ID3D11Layout.

CreateInputLayout requires a shader as an input, but it only cares about
the signature; we don't need to recompute it for different shaders with
the same inputs.
Merge pull request #223 from magumagu/d3d-cache-input-layout

D3DBackend: Don't recompute ID3D11InputLayout for different shaders.