diff --git a/pom.xml b/pom.xml
index 99bb757..f57ab27 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,7 +27,7 @@
 
     <modelVersion>4.0.0</modelVersion>
     <artifactId>org.apache.sling.query</artifactId>
-    <version>2.0.1-SNAPSHOT</version>
+    <version>3.0.0-SNAPSHOT</version>
     <packaging>bundle</packaging>
 
     <name>Apache Sling Query</name>
diff --git a/src/main/java/org/apache/sling/query/AbstractQuery.java b/src/main/java/org/apache/sling/query/AbstractQuery.java
index 3145668..20bb788 100644
--- a/src/main/java/org/apache/sling/query/AbstractQuery.java
+++ b/src/main/java/org/apache/sling/query/AbstractQuery.java
@@ -24,12 +24,12 @@
 import java.util.Iterator;
 import java.util.List;
 
-import org.apache.sling.query.api.Function;
 import org.apache.sling.query.api.Predicate;
 import org.apache.sling.query.api.SearchStrategy;
 import org.apache.sling.query.api.TreeProvider;
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.Function;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 import org.apache.sling.query.function.AddFunction;
 import org.apache.sling.query.function.ChildrenFunction;
 import org.apache.sling.query.function.ClosestFunction;
@@ -54,7 +54,11 @@
 import org.apache.sling.query.predicate.IterableContainsPredicate;
 import org.apache.sling.query.predicate.RejectingPredicate;
 import org.apache.sling.query.selector.SelectorFunction;
+import org.apache.sling.query.util.LazyList;
 
+import aQute.bnd.annotation.ProviderType;
+
+@ProviderType
 public abstract class AbstractQuery<T, Q extends AbstractQuery<T, Q>> implements Iterable<T> {
 
 	protected final List<Function<?, ?>> functions = new ArrayList<Function<?, ?>>();
diff --git a/src/main/java/org/apache/sling/query/SlingQuery.java b/src/main/java/org/apache/sling/query/SlingQuery.java
index a28cdfa..7d39472 100644
--- a/src/main/java/org/apache/sling/query/SlingQuery.java
+++ b/src/main/java/org/apache/sling/query/SlingQuery.java
@@ -28,11 +28,14 @@
 import org.apache.sling.query.iterator.AdaptToIterator;
 import org.apache.sling.query.resource.ResourceTreeProvider;
 
+import aQute.bnd.annotation.ProviderType;
+
 /**
  * SlingQuery is a Sling resource tree traversal tool inspired by the jQuery.
  * 
  * @author Tomasz Rękawek
  */
+@ProviderType
 public class SlingQuery extends AbstractQuery<Resource, SlingQuery> {
 
 	private SlingQuery(AbstractQuery<Resource, SlingQuery> original, SearchStrategy strategy) {
diff --git a/src/main/java/org/apache/sling/query/api/Predicate.java b/src/main/java/org/apache/sling/query/api/Predicate.java
index 0354a51..97c710f 100644
--- a/src/main/java/org/apache/sling/query/api/Predicate.java
+++ b/src/main/java/org/apache/sling/query/api/Predicate.java
@@ -19,12 +19,15 @@
 
 package org.apache.sling.query.api;
 
+import aQute.bnd.annotation.ConsumerType;
+
 /**
  * ResourcePredicate determine true or false value for a given T.
  * 
  * @author Tomasz Rękawek
  * 
  */
+@ConsumerType
 public interface Predicate<T> {
 	/**
 	 * Accept or reject given resource.
diff --git a/src/main/java/org/apache/sling/query/api/SearchStrategy.java b/src/main/java/org/apache/sling/query/api/SearchStrategy.java
index 781dd0d..9b476cc 100644
--- a/src/main/java/org/apache/sling/query/api/SearchStrategy.java
+++ b/src/main/java/org/apache/sling/query/api/SearchStrategy.java
@@ -19,6 +19,9 @@
 
 package org.apache.sling.query.api;
 
+import aQute.bnd.annotation.ProviderType;
+
+@ProviderType
 public enum SearchStrategy {
 	BFS, DFS, QUERY;
 }
diff --git a/src/main/java/org/apache/sling/query/api/TreeProvider.java b/src/main/java/org/apache/sling/query/api/TreeProvider.java
index 959b2ea..4278f06 100644
--- a/src/main/java/org/apache/sling/query/api/TreeProvider.java
+++ b/src/main/java/org/apache/sling/query/api/TreeProvider.java
@@ -25,6 +25,9 @@
 import org.apache.sling.query.selector.parser.Attribute;
 import org.apache.sling.query.selector.parser.SelectorSegment;
 
+import aQute.bnd.annotation.ConsumerType;
+
+@ConsumerType
 public interface TreeProvider<T> {
 	Iterator<T> listChildren(T parent);
 
diff --git a/src/main/java/org/apache/sling/query/api/function/ElementToIteratorFunction.java b/src/main/java/org/apache/sling/query/api/internal/ElementToIteratorFunction.java
similarity index 90%
rename from src/main/java/org/apache/sling/query/api/function/ElementToIteratorFunction.java
rename to src/main/java/org/apache/sling/query/api/internal/ElementToIteratorFunction.java
index 4c98a58..dd96153 100644
--- a/src/main/java/org/apache/sling/query/api/function/ElementToIteratorFunction.java
+++ b/src/main/java/org/apache/sling/query/api/internal/ElementToIteratorFunction.java
@@ -17,11 +17,9 @@
  * under the License.
  */
 
-package org.apache.sling.query.api.function;
+package org.apache.sling.query.api.internal;
 
 import java.util.Iterator;
 
-import org.apache.sling.query.api.Function;
-
 public interface ElementToIteratorFunction<T> extends Function<T, Iterator<T>> {
 }
diff --git a/src/main/java/org/apache/sling/query/api/Function.java b/src/main/java/org/apache/sling/query/api/internal/Function.java
similarity index 91%
rename from src/main/java/org/apache/sling/query/api/Function.java
rename to src/main/java/org/apache/sling/query/api/internal/Function.java
index 627875c..bdb82e1 100644
--- a/src/main/java/org/apache/sling/query/api/Function.java
+++ b/src/main/java/org/apache/sling/query/api/internal/Function.java
@@ -17,7 +17,9 @@
  * under the License.
  */
 
-package org.apache.sling.query.api;
+package org.apache.sling.query.api.internal;
+
+import aQute.bnd.annotation.ConsumerType;
 
 /**
  * Function can transform one value into another.
@@ -27,6 +29,7 @@
  * @param <F> Input type
  * @param <T> Output type
  */
+@ConsumerType
 public interface Function<F, T> {
 	/**
 	 * Take input F and transform it into output T.
diff --git a/src/main/java/org/apache/sling/query/api/function/IteratorToIteratorFunction.java b/src/main/java/org/apache/sling/query/api/internal/IteratorToIteratorFunction.java
similarity index 91%
rename from src/main/java/org/apache/sling/query/api/function/IteratorToIteratorFunction.java
rename to src/main/java/org/apache/sling/query/api/internal/IteratorToIteratorFunction.java
index cb14cd2..6fb9e4c 100644
--- a/src/main/java/org/apache/sling/query/api/function/IteratorToIteratorFunction.java
+++ b/src/main/java/org/apache/sling/query/api/internal/IteratorToIteratorFunction.java
@@ -17,11 +17,9 @@
  * under the License.
  */
 
-package org.apache.sling.query.api.function;
+package org.apache.sling.query.api.internal;
 
 import java.util.Iterator;
 
-import org.apache.sling.query.api.Function;
-
 public interface IteratorToIteratorFunction<T> extends Function<Iterator<Option<T>>, Iterator<Option<T>>> {
 }
diff --git a/src/main/java/org/apache/sling/query/api/function/Option.java b/src/main/java/org/apache/sling/query/api/internal/Option.java
similarity index 97%
rename from src/main/java/org/apache/sling/query/api/function/Option.java
rename to src/main/java/org/apache/sling/query/api/internal/Option.java
index dbc0249..f737971 100644
--- a/src/main/java/org/apache/sling/query/api/function/Option.java
+++ b/src/main/java/org/apache/sling/query/api/internal/Option.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.sling.query.api.function;
+package org.apache.sling.query.api.internal;
 
 import org.apache.commons.lang.builder.EqualsBuilder;
 import org.apache.commons.lang.builder.HashCodeBuilder;
diff --git a/src/main/java/org/apache/sling/query/api/function/ElementToIteratorFunction.java b/src/main/java/org/apache/sling/query/api/package-info.java
similarity index 79%
copy from src/main/java/org/apache/sling/query/api/function/ElementToIteratorFunction.java
copy to src/main/java/org/apache/sling/query/api/package-info.java
index 4c98a58..aca85ff 100644
--- a/src/main/java/org/apache/sling/query/api/function/ElementToIteratorFunction.java
+++ b/src/main/java/org/apache/sling/query/api/package-info.java
@@ -1,4 +1,4 @@
-/*-
+/*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -17,11 +17,8 @@
  * under the License.
  */
 
-package org.apache.sling.query.api.function;
+@Version("3.0.0")
+package org.apache.sling.query.api;
 
-import java.util.Iterator;
+import aQute.bnd.annotation.Version;
 
-import org.apache.sling.query.api.Function;
-
-public interface ElementToIteratorFunction<T> extends Function<T, Iterator<T>> {
-}
diff --git a/src/main/java/org/apache/sling/query/function/AddFunction.java b/src/main/java/org/apache/sling/query/function/AddFunction.java
index 4d4f364..32a4cae 100644
--- a/src/main/java/org/apache/sling/query/function/AddFunction.java
+++ b/src/main/java/org/apache/sling/query/function/AddFunction.java
@@ -21,8 +21,8 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 import org.apache.sling.query.iterator.MergingIterator;
 import org.apache.sling.query.iterator.OptionDecoratingIterator;
 
diff --git a/src/main/java/org/apache/sling/query/function/ChildrenFunction.java b/src/main/java/org/apache/sling/query/function/ChildrenFunction.java
index 17fce29..d335793 100644
--- a/src/main/java/org/apache/sling/query/function/ChildrenFunction.java
+++ b/src/main/java/org/apache/sling/query/function/ChildrenFunction.java
@@ -22,7 +22,7 @@
 import java.util.Iterator;
 
 import org.apache.sling.query.api.TreeProvider;
-import org.apache.sling.query.api.function.ElementToIteratorFunction;
+import org.apache.sling.query.api.internal.ElementToIteratorFunction;
 
 public class ChildrenFunction<T> implements ElementToIteratorFunction<T> {
 
diff --git a/src/main/java/org/apache/sling/query/function/ClosestFunction.java b/src/main/java/org/apache/sling/query/function/ClosestFunction.java
index 92eb1a8..08c1937 100644
--- a/src/main/java/org/apache/sling/query/function/ClosestFunction.java
+++ b/src/main/java/org/apache/sling/query/function/ClosestFunction.java
@@ -21,10 +21,10 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.IteratorUtils;
 import org.apache.sling.query.api.Predicate;
 import org.apache.sling.query.api.TreeProvider;
-import org.apache.sling.query.api.function.ElementToIteratorFunction;
+import org.apache.sling.query.api.internal.ElementToIteratorFunction;
+import org.apache.sling.query.util.IteratorUtils;
 
 public class ClosestFunction<T> implements ElementToIteratorFunction<T> {
 
diff --git a/src/main/java/org/apache/sling/query/function/CompositeFunction.java b/src/main/java/org/apache/sling/query/function/CompositeFunction.java
index 0041600..538b9cd 100644
--- a/src/main/java/org/apache/sling/query/function/CompositeFunction.java
+++ b/src/main/java/org/apache/sling/query/function/CompositeFunction.java
@@ -22,9 +22,9 @@
 import java.util.Iterator;
 import java.util.List;
 
-import org.apache.sling.query.api.Function;
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.Function;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 
 public class CompositeFunction<T> implements IteratorToIteratorFunction<T> {
 
diff --git a/src/main/java/org/apache/sling/query/function/DescendantFunction.java b/src/main/java/org/apache/sling/query/function/DescendantFunction.java
index 3510f40..657c8ba 100644
--- a/src/main/java/org/apache/sling/query/function/DescendantFunction.java
+++ b/src/main/java/org/apache/sling/query/function/DescendantFunction.java
@@ -22,8 +22,8 @@
 import java.util.Iterator;
 
 import org.apache.sling.query.api.TreeProvider;
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 import org.apache.sling.query.iterator.DescendantsIterator;
 
 public class DescendantFunction<T> implements IteratorToIteratorFunction<T> {
diff --git a/src/main/java/org/apache/sling/query/function/EvenFunction.java b/src/main/java/org/apache/sling/query/function/EvenFunction.java
index a127b74..4a552bb 100644
--- a/src/main/java/org/apache/sling/query/function/EvenFunction.java
+++ b/src/main/java/org/apache/sling/query/function/EvenFunction.java
@@ -22,8 +22,8 @@
 import java.util.Iterator;
 
 import org.apache.sling.query.api.Predicate;
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 import org.apache.sling.query.iterator.FilteringIterator;
 
 public class EvenFunction<T> implements IteratorToIteratorFunction<T> {
diff --git a/src/main/java/org/apache/sling/query/function/FilterFunction.java b/src/main/java/org/apache/sling/query/function/FilterFunction.java
index d45c49f..edd6b22 100644
--- a/src/main/java/org/apache/sling/query/function/FilterFunction.java
+++ b/src/main/java/org/apache/sling/query/function/FilterFunction.java
@@ -22,8 +22,8 @@
 import java.util.Iterator;
 
 import org.apache.sling.query.api.Predicate;
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 import org.apache.sling.query.iterator.FilteringIterator;
 
 public class FilterFunction<T> implements IteratorToIteratorFunction<T> {
diff --git a/src/main/java/org/apache/sling/query/function/FindFunction.java b/src/main/java/org/apache/sling/query/function/FindFunction.java
index e38205c..7580cad 100644
--- a/src/main/java/org/apache/sling/query/function/FindFunction.java
+++ b/src/main/java/org/apache/sling/query/function/FindFunction.java
@@ -25,7 +25,7 @@
 
 import org.apache.sling.query.api.SearchStrategy;
 import org.apache.sling.query.api.TreeProvider;
-import org.apache.sling.query.api.function.ElementToIteratorFunction;
+import org.apache.sling.query.api.internal.ElementToIteratorFunction;
 import org.apache.sling.query.iterator.WarningIterator;
 import org.apache.sling.query.iterator.tree.BfsTreeIterator;
 import org.apache.sling.query.iterator.tree.DfsTreeIterator;
diff --git a/src/main/java/org/apache/sling/query/function/HasFunction.java b/src/main/java/org/apache/sling/query/function/HasFunction.java
index 7222e5d..4407d0d 100644
--- a/src/main/java/org/apache/sling/query/function/HasFunction.java
+++ b/src/main/java/org/apache/sling/query/function/HasFunction.java
@@ -21,15 +21,15 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.IteratorUtils;
 import org.apache.sling.query.api.Predicate;
 import org.apache.sling.query.api.SearchStrategy;
 import org.apache.sling.query.api.TreeProvider;
-import org.apache.sling.query.api.function.ElementToIteratorFunction;
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.ElementToIteratorFunction;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 import org.apache.sling.query.iterator.EmptyElementFilter;
 import org.apache.sling.query.selector.SelectorFunction;
+import org.apache.sling.query.util.IteratorUtils;
 
 public class HasFunction<T> implements ElementToIteratorFunction<T> {
 
diff --git a/src/main/java/org/apache/sling/query/function/IdentityFunction.java b/src/main/java/org/apache/sling/query/function/IdentityFunction.java
index 71b3d4f..7e73d51 100644
--- a/src/main/java/org/apache/sling/query/function/IdentityFunction.java
+++ b/src/main/java/org/apache/sling/query/function/IdentityFunction.java
@@ -21,8 +21,8 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 
 public class IdentityFunction<T> implements IteratorToIteratorFunction<T> {
 
diff --git a/src/main/java/org/apache/sling/query/function/IteratorToIteratorFunctionWrapper.java b/src/main/java/org/apache/sling/query/function/IteratorToIteratorFunctionWrapper.java
index ec207cb..7693904 100644
--- a/src/main/java/org/apache/sling/query/function/IteratorToIteratorFunctionWrapper.java
+++ b/src/main/java/org/apache/sling/query/function/IteratorToIteratorFunctionWrapper.java
@@ -21,10 +21,10 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.api.Function;
-import org.apache.sling.query.api.function.ElementToIteratorFunction;
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.ElementToIteratorFunction;
+import org.apache.sling.query.api.internal.Function;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 import org.apache.sling.query.iterator.ExpandingIterator;
 
 public class IteratorToIteratorFunctionWrapper<T> implements IteratorToIteratorFunction<T> {
diff --git a/src/main/java/org/apache/sling/query/function/LastFunction.java b/src/main/java/org/apache/sling/query/function/LastFunction.java
index e808eaa..83c0b08 100644
--- a/src/main/java/org/apache/sling/query/function/LastFunction.java
+++ b/src/main/java/org/apache/sling/query/function/LastFunction.java
@@ -21,8 +21,8 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 import org.apache.sling.query.iterator.LastIterator;
 
 public class LastFunction<T> implements IteratorToIteratorFunction<T> {
diff --git a/src/main/java/org/apache/sling/query/function/NextFunction.java b/src/main/java/org/apache/sling/query/function/NextFunction.java
index b27bc2e..da85fb9 100644
--- a/src/main/java/org/apache/sling/query/function/NextFunction.java
+++ b/src/main/java/org/apache/sling/query/function/NextFunction.java
@@ -23,7 +23,7 @@
 
 import org.apache.sling.query.api.Predicate;
 import org.apache.sling.query.api.TreeProvider;
-import org.apache.sling.query.api.function.ElementToIteratorFunction;
+import org.apache.sling.query.api.internal.ElementToIteratorFunction;
 import org.apache.sling.query.iterator.SiblingsIterator;
 import org.apache.sling.query.iterator.SiblingsIterator.Type;
 
diff --git a/src/main/java/org/apache/sling/query/function/NotFunction.java b/src/main/java/org/apache/sling/query/function/NotFunction.java
index b244a2b..0447592 100644
--- a/src/main/java/org/apache/sling/query/function/NotFunction.java
+++ b/src/main/java/org/apache/sling/query/function/NotFunction.java
@@ -21,8 +21,8 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 import org.apache.sling.query.iterator.ReverseIterator;
 
 public class NotFunction<T> implements IteratorToIteratorFunction<T> {
diff --git a/src/main/java/org/apache/sling/query/function/ParentFunction.java b/src/main/java/org/apache/sling/query/function/ParentFunction.java
index 6f0c19e..a5885b9 100644
--- a/src/main/java/org/apache/sling/query/function/ParentFunction.java
+++ b/src/main/java/org/apache/sling/query/function/ParentFunction.java
@@ -21,9 +21,9 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.IteratorUtils;
 import org.apache.sling.query.api.TreeProvider;
-import org.apache.sling.query.api.function.ElementToIteratorFunction;
+import org.apache.sling.query.api.internal.ElementToIteratorFunction;
+import org.apache.sling.query.util.IteratorUtils;
 
 public class ParentFunction<T> implements ElementToIteratorFunction<T> {
 
diff --git a/src/main/java/org/apache/sling/query/function/ParentsFunction.java b/src/main/java/org/apache/sling/query/function/ParentsFunction.java
index 4b8a7ce..0df4679 100644
--- a/src/main/java/org/apache/sling/query/function/ParentsFunction.java
+++ b/src/main/java/org/apache/sling/query/function/ParentsFunction.java
@@ -23,7 +23,7 @@
 
 import org.apache.sling.query.api.Predicate;
 import org.apache.sling.query.api.TreeProvider;
-import org.apache.sling.query.api.function.ElementToIteratorFunction;
+import org.apache.sling.query.api.internal.ElementToIteratorFunction;
 import org.apache.sling.query.iterator.ParentsIterator;
 
 public class ParentsFunction<T> implements ElementToIteratorFunction<T> {
diff --git a/src/main/java/org/apache/sling/query/function/PrevFunction.java b/src/main/java/org/apache/sling/query/function/PrevFunction.java
index 1354295..e1b5da3 100644
--- a/src/main/java/org/apache/sling/query/function/PrevFunction.java
+++ b/src/main/java/org/apache/sling/query/function/PrevFunction.java
@@ -23,7 +23,7 @@
 
 import org.apache.sling.query.api.Predicate;
 import org.apache.sling.query.api.TreeProvider;
-import org.apache.sling.query.api.function.ElementToIteratorFunction;
+import org.apache.sling.query.api.internal.ElementToIteratorFunction;
 import org.apache.sling.query.iterator.SiblingsIterator;
 import org.apache.sling.query.iterator.SiblingsIterator.Type;
 
diff --git a/src/main/java/org/apache/sling/query/function/SiblingsFunction.java b/src/main/java/org/apache/sling/query/function/SiblingsFunction.java
index 94bf6f0..a4ddca5 100644
--- a/src/main/java/org/apache/sling/query/function/SiblingsFunction.java
+++ b/src/main/java/org/apache/sling/query/function/SiblingsFunction.java
@@ -21,9 +21,9 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.IteratorUtils;
 import org.apache.sling.query.api.TreeProvider;
-import org.apache.sling.query.api.function.ElementToIteratorFunction;
+import org.apache.sling.query.api.internal.ElementToIteratorFunction;
+import org.apache.sling.query.util.IteratorUtils;
 
 public class SiblingsFunction<T> implements ElementToIteratorFunction<T> {
 
diff --git a/src/main/java/org/apache/sling/query/function/SliceFunction.java b/src/main/java/org/apache/sling/query/function/SliceFunction.java
index 2e58e0e..e28ef82 100644
--- a/src/main/java/org/apache/sling/query/function/SliceFunction.java
+++ b/src/main/java/org/apache/sling/query/function/SliceFunction.java
@@ -21,8 +21,8 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 import org.apache.sling.query.iterator.SliceIterator;
 
 public class SliceFunction<T> implements IteratorToIteratorFunction<T> {
diff --git a/src/main/java/org/apache/sling/query/function/UniqueFunction.java b/src/main/java/org/apache/sling/query/function/UniqueFunction.java
index c18880c..fdfd20b 100644
--- a/src/main/java/org/apache/sling/query/function/UniqueFunction.java
+++ b/src/main/java/org/apache/sling/query/function/UniqueFunction.java
@@ -22,8 +22,8 @@
 import java.util.Iterator;
 
 import org.apache.sling.query.api.TreeProvider;
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 import org.apache.sling.query.iterator.UniqueIterator;
 
 public class UniqueFunction<T> implements IteratorToIteratorFunction<T> {
diff --git a/src/main/java/org/apache/sling/query/iterator/AlternativeIterator.java b/src/main/java/org/apache/sling/query/iterator/AlternativeIterator.java
index d9badcf..9b0a5bb 100644
--- a/src/main/java/org/apache/sling/query/iterator/AlternativeIterator.java
+++ b/src/main/java/org/apache/sling/query/iterator/AlternativeIterator.java
@@ -22,7 +22,7 @@
 import java.util.Iterator;
 import java.util.List;
 
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.Option;
 
 public class AlternativeIterator<T> extends AbstractIterator<Option<T>> {
 
diff --git a/src/main/java/org/apache/sling/query/iterator/ArgumentResettingIterator.java b/src/main/java/org/apache/sling/query/iterator/ArgumentResettingIterator.java
index 14a9778..ef6b818 100644
--- a/src/main/java/org/apache/sling/query/iterator/ArgumentResettingIterator.java
+++ b/src/main/java/org/apache/sling/query/iterator/ArgumentResettingIterator.java
@@ -21,7 +21,7 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.Option;
 
 public class ArgumentResettingIterator<T> implements Iterator<Option<T>> {
 
diff --git a/src/main/java/org/apache/sling/query/iterator/DescendantsIterator.java b/src/main/java/org/apache/sling/query/iterator/DescendantsIterator.java
index e40fa60..d4469f7 100644
--- a/src/main/java/org/apache/sling/query/iterator/DescendantsIterator.java
+++ b/src/main/java/org/apache/sling/query/iterator/DescendantsIterator.java
@@ -22,9 +22,9 @@
 import java.util.ArrayList;
 import java.util.Iterator;
 
-import org.apache.sling.query.LazyList;
 import org.apache.sling.query.api.TreeProvider;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.Option;
+import org.apache.sling.query.util.LazyList;
 
 public class DescendantsIterator<T> extends AbstractIterator<Option<T>> {
 
diff --git a/src/main/java/org/apache/sling/query/iterator/EmptyElementFilter.java b/src/main/java/org/apache/sling/query/iterator/EmptyElementFilter.java
index 3f292f5..f12300f 100644
--- a/src/main/java/org/apache/sling/query/iterator/EmptyElementFilter.java
+++ b/src/main/java/org/apache/sling/query/iterator/EmptyElementFilter.java
@@ -21,7 +21,7 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.Option;
 
 public class EmptyElementFilter<T> extends AbstractIterator<Option<T>> {
 
diff --git a/src/main/java/org/apache/sling/query/iterator/ExpandingIterator.java b/src/main/java/org/apache/sling/query/iterator/ExpandingIterator.java
index 96d4be7..c302892 100644
--- a/src/main/java/org/apache/sling/query/iterator/ExpandingIterator.java
+++ b/src/main/java/org/apache/sling/query/iterator/ExpandingIterator.java
@@ -21,8 +21,8 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.api.function.ElementToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.ElementToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 
 /**
  * This iterator evaluates each element from the source iterator, expanding it using given function.
diff --git a/src/main/java/org/apache/sling/query/iterator/FilteringIterator.java b/src/main/java/org/apache/sling/query/iterator/FilteringIterator.java
index fea6774..1f77c3d 100644
--- a/src/main/java/org/apache/sling/query/iterator/FilteringIterator.java
+++ b/src/main/java/org/apache/sling/query/iterator/FilteringIterator.java
@@ -22,7 +22,7 @@
 import java.util.Iterator;
 
 import org.apache.sling.query.api.Predicate;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.Option;
 
 public class FilteringIterator<T> extends AbstractIterator<Option<T>> {
 
diff --git a/src/main/java/org/apache/sling/query/iterator/LastIterator.java b/src/main/java/org/apache/sling/query/iterator/LastIterator.java
index 10cc676..b02621f 100644
--- a/src/main/java/org/apache/sling/query/iterator/LastIterator.java
+++ b/src/main/java/org/apache/sling/query/iterator/LastIterator.java
@@ -22,8 +22,8 @@
 import java.util.Iterator;
 import java.util.ListIterator;
 
-import org.apache.sling.query.LazyList;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.Option;
+import org.apache.sling.query.util.LazyList;
 
 public class LastIterator<T> extends AbstractIterator<Option<T>> {
 
diff --git a/src/main/java/org/apache/sling/query/iterator/OptionDecoratingIterator.java b/src/main/java/org/apache/sling/query/iterator/OptionDecoratingIterator.java
index e88fd60..1b537ef 100644
--- a/src/main/java/org/apache/sling/query/iterator/OptionDecoratingIterator.java
+++ b/src/main/java/org/apache/sling/query/iterator/OptionDecoratingIterator.java
@@ -21,7 +21,7 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.Option;
 
 public class OptionDecoratingIterator<T> implements Iterator<Option<T>> {
 
diff --git a/src/main/java/org/apache/sling/query/iterator/OptionStrippingIterator.java b/src/main/java/org/apache/sling/query/iterator/OptionStrippingIterator.java
index 878f728..f6e03a1 100644
--- a/src/main/java/org/apache/sling/query/iterator/OptionStrippingIterator.java
+++ b/src/main/java/org/apache/sling/query/iterator/OptionStrippingIterator.java
@@ -21,7 +21,7 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.Option;
 
 public class OptionStrippingIterator<T> implements Iterator<T> {
 
diff --git a/src/main/java/org/apache/sling/query/iterator/ReverseIterator.java b/src/main/java/org/apache/sling/query/iterator/ReverseIterator.java
index 828abfa..4779678 100644
--- a/src/main/java/org/apache/sling/query/iterator/ReverseIterator.java
+++ b/src/main/java/org/apache/sling/query/iterator/ReverseIterator.java
@@ -21,9 +21,9 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.LazyList;
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
+import org.apache.sling.query.util.LazyList;
 
 public class ReverseIterator<T> extends AbstractIterator<Option<T>> {
 
diff --git a/src/main/java/org/apache/sling/query/iterator/SiblingsIterator.java b/src/main/java/org/apache/sling/query/iterator/SiblingsIterator.java
index d2b3a84..663a962 100644
--- a/src/main/java/org/apache/sling/query/iterator/SiblingsIterator.java
+++ b/src/main/java/org/apache/sling/query/iterator/SiblingsIterator.java
@@ -22,10 +22,10 @@
 import java.util.Iterator;
 import java.util.ListIterator;
 
-import org.apache.sling.query.IteratorUtils;
-import org.apache.sling.query.LazyList;
 import org.apache.sling.query.api.Predicate;
 import org.apache.sling.query.api.TreeProvider;
+import org.apache.sling.query.util.IteratorUtils;
+import org.apache.sling.query.util.LazyList;
 
 public class SiblingsIterator<T> extends AbstractIterator<T> {
 
diff --git a/src/main/java/org/apache/sling/query/iterator/SliceIterator.java b/src/main/java/org/apache/sling/query/iterator/SliceIterator.java
index b51094c..20493ae 100644
--- a/src/main/java/org/apache/sling/query/iterator/SliceIterator.java
+++ b/src/main/java/org/apache/sling/query/iterator/SliceIterator.java
@@ -21,7 +21,7 @@
 
 import java.util.Iterator;
 
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.Option;
 
 public class SliceIterator<T> extends AbstractIterator<Option<T>> {
 
diff --git a/src/main/java/org/apache/sling/query/iterator/SuppIterator.java b/src/main/java/org/apache/sling/query/iterator/SuppIterator.java
index 78aca5b..fafd2a2 100644
--- a/src/main/java/org/apache/sling/query/iterator/SuppIterator.java
+++ b/src/main/java/org/apache/sling/query/iterator/SuppIterator.java
@@ -22,8 +22,8 @@
 import java.util.Iterator;
 import java.util.List;
 
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 
 /**
  * This iterator returns all elements of the input list which are mapped to non-empty values by the input
diff --git a/src/main/java/org/apache/sling/query/iterator/UniqueIterator.java b/src/main/java/org/apache/sling/query/iterator/UniqueIterator.java
index 2b05c84..17d50b1 100644
--- a/src/main/java/org/apache/sling/query/iterator/UniqueIterator.java
+++ b/src/main/java/org/apache/sling/query/iterator/UniqueIterator.java
@@ -22,7 +22,7 @@
 import java.util.Iterator;
 
 import org.apache.sling.query.api.TreeProvider;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.Option;
 
 public class UniqueIterator<T> extends AbstractIterator<Option<T>> {
 
diff --git a/src/main/java/org/apache/sling/query/api/function/ElementToIteratorFunction.java b/src/main/java/org/apache/sling/query/package-info.java
similarity index 79%
copy from src/main/java/org/apache/sling/query/api/function/ElementToIteratorFunction.java
copy to src/main/java/org/apache/sling/query/package-info.java
index 4c98a58..eff0363 100644
--- a/src/main/java/org/apache/sling/query/api/function/ElementToIteratorFunction.java
+++ b/src/main/java/org/apache/sling/query/package-info.java
@@ -1,4 +1,4 @@
-/*-
+/*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -17,11 +17,8 @@
  * under the License.
  */
 
-package org.apache.sling.query.api.function;
+@Version("3.0.0")
+package org.apache.sling.query;
 
-import java.util.Iterator;
+import aQute.bnd.annotation.Version;
 
-import org.apache.sling.query.api.Function;
-
-public interface ElementToIteratorFunction<T> extends Function<T, Iterator<T>> {
-}
diff --git a/src/main/java/org/apache/sling/query/predicate/IterableContainsPredicate.java b/src/main/java/org/apache/sling/query/predicate/IterableContainsPredicate.java
index 90ca9db..acecc25 100644
--- a/src/main/java/org/apache/sling/query/predicate/IterableContainsPredicate.java
+++ b/src/main/java/org/apache/sling/query/predicate/IterableContainsPredicate.java
@@ -19,9 +19,9 @@
 
 package org.apache.sling.query.predicate;
 
-import org.apache.sling.query.LazyList;
 import org.apache.sling.query.api.Predicate;
 import org.apache.sling.query.api.TreeProvider;
+import org.apache.sling.query.util.LazyList;
 
 public class IterableContainsPredicate<T> implements Predicate<T> {
 
diff --git a/src/main/java/org/apache/sling/query/selector/FunctionType.java b/src/main/java/org/apache/sling/query/selector/FunctionType.java
index 806a837..c4b37dd 100644
--- a/src/main/java/org/apache/sling/query/selector/FunctionType.java
+++ b/src/main/java/org/apache/sling/query/selector/FunctionType.java
@@ -19,9 +19,9 @@
 
 package org.apache.sling.query.selector;
 
-import org.apache.sling.query.api.Function;
 import org.apache.sling.query.api.SearchStrategy;
 import org.apache.sling.query.api.TreeProvider;
+import org.apache.sling.query.api.internal.Function;
 import org.apache.sling.query.function.EvenFunction;
 import org.apache.sling.query.function.FilterFunction;
 import org.apache.sling.query.function.HasFunction;
diff --git a/src/main/java/org/apache/sling/query/selector/HierarchyOperator.java b/src/main/java/org/apache/sling/query/selector/HierarchyOperator.java
index bcb0750..df6edd7 100644
--- a/src/main/java/org/apache/sling/query/selector/HierarchyOperator.java
+++ b/src/main/java/org/apache/sling/query/selector/HierarchyOperator.java
@@ -19,9 +19,9 @@
 
 package org.apache.sling.query.selector;
 
-import org.apache.sling.query.api.Function;
 import org.apache.sling.query.api.SearchStrategy;
 import org.apache.sling.query.api.TreeProvider;
+import org.apache.sling.query.api.internal.Function;
 import org.apache.sling.query.function.ChildrenFunction;
 import org.apache.sling.query.function.FindFunction;
 import org.apache.sling.query.function.IdentityFunction;
diff --git a/src/main/java/org/apache/sling/query/selector/SelectorFunction.java b/src/main/java/org/apache/sling/query/selector/SelectorFunction.java
index e3a2e1f..ecd2ea0 100644
--- a/src/main/java/org/apache/sling/query/selector/SelectorFunction.java
+++ b/src/main/java/org/apache/sling/query/selector/SelectorFunction.java
@@ -23,14 +23,12 @@
 import java.util.Iterator;
 import java.util.List;
 
-import org.apache.sling.query.IteratorUtils;
-import org.apache.sling.query.LazyList;
-import org.apache.sling.query.api.Function;
 import org.apache.sling.query.api.Predicate;
 import org.apache.sling.query.api.SearchStrategy;
 import org.apache.sling.query.api.TreeProvider;
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.Function;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 import org.apache.sling.query.function.CompositeFunction;
 import org.apache.sling.query.function.FilterFunction;
 import org.apache.sling.query.iterator.AlternativeIterator;
@@ -40,6 +38,8 @@
 import org.apache.sling.query.selector.parser.Selector;
 import org.apache.sling.query.selector.parser.SelectorParser;
 import org.apache.sling.query.selector.parser.SelectorSegment;
+import org.apache.sling.query.util.IteratorUtils;
+import org.apache.sling.query.util.LazyList;
 
 public class SelectorFunction<T> implements IteratorToIteratorFunction<T>, Predicate<T> {
 
diff --git a/src/main/java/org/apache/sling/query/IteratorUtils.java b/src/main/java/org/apache/sling/query/util/IteratorUtils.java
similarity index 97%
rename from src/main/java/org/apache/sling/query/IteratorUtils.java
rename to src/main/java/org/apache/sling/query/util/IteratorUtils.java
index 4975be6..916f50b 100644
--- a/src/main/java/org/apache/sling/query/IteratorUtils.java
+++ b/src/main/java/org/apache/sling/query/util/IteratorUtils.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.sling.query;
+package org.apache.sling.query.util;
 
 import java.util.Arrays;
 import java.util.Iterator;
diff --git a/src/main/java/org/apache/sling/query/LazyList.java b/src/main/java/org/apache/sling/query/util/LazyList.java
similarity index 99%
rename from src/main/java/org/apache/sling/query/LazyList.java
rename to src/main/java/org/apache/sling/query/util/LazyList.java
index ce6a630..f0ec7da 100644
--- a/src/main/java/org/apache/sling/query/LazyList.java
+++ b/src/main/java/org/apache/sling/query/util/LazyList.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.sling.query;
+package org.apache.sling.query.util;
 
 import java.util.ArrayList;
 import java.util.Collection;
diff --git a/src/test/java/org/apache/sling/query/TestUtils.java b/src/test/java/org/apache/sling/query/TestUtils.java
index b2bd9ba..7b68afa 100644
--- a/src/test/java/org/apache/sling/query/TestUtils.java
+++ b/src/test/java/org/apache/sling/query/TestUtils.java
@@ -29,7 +29,7 @@
 import java.util.Set;
 
 import org.apache.sling.api.resource.Resource;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.Option;
 import org.apache.sling.query.mock.json.JsonToResource;
 import org.junit.Assert;
 
diff --git a/src/test/java/org/apache/sling/query/iterator/ReverseTest.java b/src/test/java/org/apache/sling/query/iterator/ReverseTest.java
index 10876dd..e453be4 100644
--- a/src/test/java/org/apache/sling/query/iterator/ReverseTest.java
+++ b/src/test/java/org/apache/sling/query/iterator/ReverseTest.java
@@ -23,8 +23,8 @@
 import java.util.List;
 
 import org.apache.sling.query.TestUtils;
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 import org.apache.sling.query.function.IdentityFunction;
 import org.apache.sling.query.function.SliceFunction;
 import org.apache.sling.query.iterator.ReverseIterator;
diff --git a/src/test/java/org/apache/sling/query/iterator/SuppTest.java b/src/test/java/org/apache/sling/query/iterator/SuppTest.java
index de4f326..a29a2bb 100644
--- a/src/test/java/org/apache/sling/query/iterator/SuppTest.java
+++ b/src/test/java/org/apache/sling/query/iterator/SuppTest.java
@@ -24,9 +24,9 @@
 import java.util.List;
 
 import org.apache.sling.query.TestUtils;
-import org.apache.sling.query.api.function.ElementToIteratorFunction;
-import org.apache.sling.query.api.function.IteratorToIteratorFunction;
-import org.apache.sling.query.api.function.Option;
+import org.apache.sling.query.api.internal.ElementToIteratorFunction;
+import org.apache.sling.query.api.internal.IteratorToIteratorFunction;
+import org.apache.sling.query.api.internal.Option;
 import org.apache.sling.query.function.IdentityFunction;
 import org.apache.sling.query.function.IteratorToIteratorFunctionWrapper;
 import org.apache.sling.query.function.SliceFunction;
