Add test for iteration over zero sized set with Map

It should be possible to have a par_loop over a zero-sized iteration set
and use a Map with no values (they will never be accessed). This
currently fails so mark test appropriately.
Don't raise error for uninitialised maps if the iterset is empty

If the iterset is zero-sized, then len(map.values) will be zero, this is
not an error. Fix logic in checking code and remove expected failure on
test of this behaviour.
Merge pull request #235 from OP2/fix-map-checking

Allow valueless Maps if their iterset has zero size.