I've encountered some cases during the development of my app where it is not enough to add a label using a String or index tag, like when labels can be of the same text representation but represent different object in a selection, or when you're trying to remove a label that corresponds to a certain checked item in your list, but the text on the label is not unique. This pull request solves that issue by being able to add a label with an Object as a tag. This can be useful when you want to pass your own model object as a tag; just make sure that your object properly overrides the equals() method so the removeLabel(Object tag) method can properly remove the corresponding label with the given tag.
I've encountered some cases during the development of my app where it is not enough to add a label using a String or index tag, like when labels can be of the same text representation but represent different object in a selection, or when you're trying to remove a label that corresponds to a certain checked item in your list, but the text on the label is not unique. This pull request solves that issue by being able to add a label with an Object as a tag. This can be useful when you want to pass your own model object as a tag; just make sure that your object properly overrides the equals() method so the removeLabel(Object tag) method can properly remove the corresponding label with the given tag.