add register and unregister test cases for Tag

Some bugs have been fixed in the same time :
 - Default value of priority for deletion (-1 wich corresponds to deleteAll)
 - NULL and nullptr handle for register and unregister
 - add getRegisteredItemsNumber (helps test and is more intuitive than size method)
 - add two private method to handle multiple delete cases (all and with a priority)
change priority type from int to unsigned int

unregisterItem method has not been changed because -1 value corresponds to
removeAllItemInstances.
add containsItem method

Also add getRegister* test cases and containsItem test case.
add getName test cases

Also add constructor empty name test case and throw a TaggerException if
a tag is constructed with an empty name