Not allowing more than 1 flag to be set.

Only one of the "localOnly", "remoteOnly" and "asExpired" might
be set simultaneously. If set, IllegalArgumentException
is thrown.

UT modified, removed the offending test method that was testing
the "local and remote set" cases, as they not really made
sense and became wrong with this change above.

Added tests for IAE being thrown for various flag combinations.