Allowed persistence of custom properties when resetting envelope state.

When resetting the envelope state, any custom properties that may have been populated on the envelope are removed. This pull request resets only the necessary properties on the envelope - leaving any custom properties to be handled by the user's own libraries.