Refactor: code split into more classes: CompassCache and CompassFilter added