Added some new tests, made selection pluggable in order to test mechanics