Add the ability to filter properties within a destructured object (especially nulls)

**Usage**

                var logConfiguration = new LoggerConfiguration()
                     .PropertyFilter.SuppressNulls() ...

**Justification**

When working with classes deserialized from JSON there tend to be a lot of null property values. Including all of these makes it hard to read the actual interesting values that are being logged. JSON.net for example includes the ability to suppress null values in serialized JSON, this is equivalent.

Followed the configuration pattern as closly as possible, opening up the way to add more property filters, for example, one that regex matches credit card numbers or email addresses and hides them from the logs, or one that hides any property ending in "Secret".  This may be easier than writing destructurers for each type to exclude them, or it may provide a fail-safe to prevent sensitive information getting into logs.