First implementation of the Gate Finder

Changes the definitions into a static class.
Adds a working implementation for Schengen gates (without checking the Schengen range however).
Adds tests for the Gate Finder; also as an example.