Fix/cmake error

This is a fix for the partial halo creation runtime error that was seemingly appeared when built with the cmake build system. However the actual cause was an error in the partial halo exchange code assuming that there are no orphan set elements at the time of partial halo creation. If the the trivial block partitioning is used then there will be orphan set elements on MPI processes. 

This pull request checks whether a proper partitioning is done before enabling partial halo creation.