Fixes for setTags() and empty tags

FIX: setTags() did not call loadTags(). Furtheron, neededSave() would
re-save even though no tags had changed, or not save when empty
setTags(array()) was called.

FIX: in for loop while saving in afterSave(), when empty tag was found,
continue instead of aborting.

CHG: remove empty tags before handling