Closes #3157
## Changes:
- The action callback of Trigger now returns the entity that triggered it.
- General cleanup of Trigger class
- `target` is now 100% separate from `filter`, because that's what the functionality described in the documentation implied (to me).
- Converted all the different "default value fallbacks" to a single setup.
- Trigger used `Entity` and `Actor` interchangeably. Rewrote it to be 100% Entity (Although Entity doesn't have any collision mechanics build in, so an argument could be made to go for 100% Actor)