Fix/various bugs

This pull request fixes several bugs in the OP2-Common library. 

1. A previous fix for Hydra had caused halos to be exchanged even for non-execute direct op_dats. This had caused the adt_calc loop to also exchange halos in the airfoil application. But only the res_calc loop is suppose to exchange halos. This fix was also successfully tested for Hydra. 

2. Fixed a bug where, the COMM_PERF flag was not switching on the functionality for collecting the information regarding which op_dats were exchanging halos. 

3. Fixed the MPI performance gathering for MPI+SEQ using op_seq.h where the previous simple implementation of a hash table was causing hash collisions. This pull request uses the lightweight open source uthash hash table implementation. Only the addition of uthash.h header file to op2/c/include was needed to get this functionality.