intersect returns null if there is no sole intersection

Signed-off-by: Mattias Andrée <maandree@operamail.com>
add more intersection and union tests

Signed-off-by: Mattias Andrée <maandree@operamail.com>