Fixed implementations of wrap( ... ) / isWrapperFor( ... ) to properly conform to spec when given an interface implemented directly by the receiver of the wrap( ... ) call. Many thanks to baracil on github for calling attention to this issue.