Added xml_open_document API call to read a XML document from file

Squashed commit of the following:

commit 3501a6d4a4696fe14781043109964f42ff489309
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 16:10:37 2012 +0100

    Open XML document...

commit e4f63354259055578ef8827bde25c3322c5386ec
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 16:10:04 2012 +0100

    Open XML document...

commit cf9b46c26059a668f842b472609454ab0f9b809f
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 16:09:56 2012 +0100

    Open XML document...

commit be3baa3d99609744084f0a2bfe49b5cd73f7ad87
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 16:09:48 2012 +0100

    Open XML document...

commit 9be46ba2cf68f22f3aa1befd75f6e63a3cc3972f
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 16:07:35 2012 +0100

    Open XML document...

commit 081a5997470c2e633bc1c8703c14ef7b70c55f29
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 16:06:58 2012 +0100

    Open XML document...

commit 4af333480380d603266f8df42b8c45408c05d48d
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 16:05:24 2012 +0100

    Open XML document...

commit f5c3a25541864db290895b652648485bba2e72fc
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 16:04:30 2012 +0100

    Open XML document...

commit 81ee66c39efaa110e92af713e04cb4249be536dc
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 16:02:53 2012 +0100

    Open XML document...

commit 1448aa14844bf74c3ccbcc6c4cd62476b6987f04
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 16:02:03 2012 +0100

    Open XML document...

commit dc767c8d671013b936fdcb729d1ebcad250f6dd4
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 16:01:14 2012 +0100

    Open XML document...

commit ad23dcc1278b132f01bc1a9c403fbd2261341759
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 16:00:25 2012 +0100

    Open XML document...

commit f7c905130de9c210f6e522c19ef1d4f29fd1f218
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 15:59:31 2012 +0100

    Open XML document...

commit 1cce95d4627e1c62bf67b5531a20a49588bef792
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 15:57:29 2012 +0100

    Open XML document...

commit 1b3fa5f68492bf5091b4cd51dec6c2817e170efa
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 15:45:03 2012 +0100

    Open XML document...

commit 0778105ea2b0761342b17e22b4be541a6a2ded3b
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 15:41:48 2012 +0100

    Open XML document...

commit 64418dcb81dcad5cb771553260c54d45eb6544c5
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 15:41:06 2012 +0100

    Open XML document...

commit 54061a0e3b7a7eb19c2048452a445c654f64a5f4
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 15:40:39 2012 +0100

    Open XML document...

commit e776734fa212642d0fe467356c66211e06c489db
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 15:39:39 2012 +0100

    Open XML document...

commit 81bbf1e0c342888ece7de9c921cbd1fb66de3a38
Author: ooxi <85fcd0ef4ec8@f977375cdcd6.anonbox.net>
Date:   Thu Nov 1 15:38:36 2012 +0100

    Open XML document...