title: xml.parsers.expat.ExpatError: not well-formed (invalid token)
body: <p>When I use xmltodict to load the xml file below I get an error:
  xml.parsers.expat.ExpatError: not well-formed (invalid token): line 1, column 1</p>
  
  <p>Here is my file:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;mydocument has="an attribute"&gt;
    &lt;and&gt;
      &lt;many&gt;elements&lt;/many&gt;
      &lt;many&gt;more elements&lt;/many&gt;
    &lt;/and&gt;
    &lt;plus a="complex"&gt;
      element as well
    &lt;/plus&gt;
  &lt;/mydocument&gt;
  </code></pre>
  
  <p>Source:</p>
  
  <pre><code>import xmltodict
  with open('fileTEST.xml') as fd:
     xmltodict.parse(fd.read())
  </code></pre>
  
  <p>I am on Windows 10, using Python 3.6 and xmltodict 0.11.0</p>
  
  <p>If I use ElementTree it works</p>
  
  <pre><code>tree = ET.ElementTree(file='fileTEST.xml')
      for elem in tree.iter():
              print(elem.tag, elem.attrib)
  
  mydocument {'has': 'an attribute'}
  and {}
  many {}
  many {}
  plus {'a': 'complex'}
  </code></pre>
  
  <p>Note: I might have encountered a new line problem.<br>
  Note2: I used Beyond Compare on two different files.<br>
  It crashes on the file that is UTF-8 BOM encoded, and works om the UTF-8 file.<br>
    UTF-8 BOM is a sequence of bytes (EF BB BF) that allows the reader to identify a file as being encoded in UTF-8.</p>