OAK-1302: PathUtils.elements returns stale iterator on subsequent calls to iterator()
Return a fresh iterator instance on each call to iterator()

git-svn-id: https://svn.apache.org/repos/asf/jackrabbit/oak/trunk@1552816 13f79535-47bb-0310-9956-ffa450edef68
OAK-1296: Use TypePredicate instead of NodeType.isNodeType() for NodeState type checks
OAK-1133: Observation listener PLUS Test cases for non JCR observation
- Use NodeState instead of Tree
- Use TypePredicate instead of NodeTypeManager

git-svn-id: https://svn.apache.org/repos/asf/jackrabbit/oak/trunk@1552819 13f79535-47bb-0310-9956-ffa450edef68