Revert "Revert "Initial commit for XML reader code""

This reverts commit 04f17a47cb5c5dd7f0bb1c9741457740447c7e9b.