Add external trigger support
Allow to change triggering setting on the go
Move trigger configuration code to separate functions
Apply triggering settings only if changed
Wrap trigger code into class
Move all trigger code to single Trigger class
Rename Trigger methods for reconfigure