Interfaces methods is always public
Some minor code fixes
Using functional collections to stay closer to Lambdas
Merge branch 'ot-refactor-interceptorpackage' into ot-dogsloveslambdas