Boolean logic error

The statement here is wrong. If the backbuffer change from 480x800 to
480x480 (an awkward thing to do) the _depthStencilView will not get
updated.

More on this method and whether the size will ever change on another
issue.
Revert "Boolean logic error"

This reverts commit 16e043cf6cbb6489a5dff630d7c6f63b2fc3f0bd.
Merge remote-tracking branch 'upstream/develop' into develop
MGFX hashCode

MGFX
Write a hash code of the shader/effect in the Header.

File version up to 6 from 5 because the header has chaneged. I had to
make room for 4 more bytes.

Everything after the header (ConstantBuffers/Shaders/etc) has to be
written into a Memory Stream.
We then calculate a hash from this memory stream and write it to the
header. at the end the memory stream is written into the final stream.
This makes it possible to accept a non seekable stream (network?) but
use more memory.
The alternative would be to store the position, write a null value,
write the rest of the file and seek back to update the hash value.

*MonoGame.Framework/Utilities/Hash.cs *
A modified version of Hash.ComputeHash() that accept streams.
This is only needed if we are going to support MGFX version 5 files.

MonoGame.Framework/Graphics/Effect/Effect.cs
Group header variables into a single struct (MGFXHeader).

Move code that reads the header from ReadEffect() into the new method
ReadHeader.

We now have to read the header every time inside the constructor.
(It seems that MemoryStream that's created from a byte array doesn't
involve memcopy but use the array directly...)

Note: There is a platform (PSM, PlayStation Mobile?) that seems to
handle things differently.

Probably I broke something there, because the code that reads the header
has been moved from ReadEffect to the constructor.
whitespaces
whitespaces
remove unused using
Add a link to Hash.cs
MGFX as 'static readonly' & new error messages.
Merge pull request #2862 from nkast/tnc_MGFXHashcode

MGFX hashCode