Added HMAC codes to AES payload.

This is bumping the version up to 4.0 because initially, the module will fail to decrypt previously-encrypted data due to the missing HMAC code.

New calls to Protect-Data will include the HMAC data automatically.  To update pre-existing ProtectedData objects without having to redo all of the key data information, a new command has been added:  Add-ProtectedDataHmac.  Its parameters (with the exception of a -PassThru switch) are identical to Unprotect-Data.