Update port conflict checker to distinguish between conflicts and exact matches.

This is a fix for #1359837 (https://bugs.launchpad.net/juju-core/+bug/1359837).

Opening a port that is already open should not result in an error.
I'd rather see "invalid port range: 100-80/tcp" only here as an error, which probably means if Validate() returns and error, just return it as-is in CheckConflicts().