More consistent key/value parsing in NpgsqlConnectionStringBuilder

.NET's DbConnectionStringBuilder, which NpgsqlConnectionStringBuilder extends, trims strings values and discards pairs with empty ones. However, NCSB's setter behaved differently, adding empty strings, leading to inconsistent behavior (bug #1011001).

Modified NCSB's behavior to be consistent with DCSB - trim and discard empty.

This is a replacement of #15 (after the migration to github)