use "? super T" generics for decoration and composition
Merge origin/master
update pom