Add component effect

Effect that adds a given component to entities that match a given tag-based expression. 
A tag-based expression is a regular expression where tags can be referenced. These are treated as boolean variables by the expression parser that are true if the tag is present, false otherwise.

Commits are provided in order.