Added JavaDoc
Small changes
Added NodeType as an enum
Added NodeTypeFilter