Added FunctionalInterface functionality

Removed unused class