Read Stata version 118 files closes #9882
closes #9882 

This extends the Stata reader to handle version 118 (stata 14) format files.

It correctly handles the test file posted by @makmanalp.  I don't have stata14 now to generate additional test files, but I'm not sure that it's necessary.

There is one point I'm not sure about, relating to the way that strls are indexed by a weird composite of a short and a 6 byte integer.  The stata docs aren't clear on how this 8 byte composite should (or shouldn't) be byteswapped when the file and local endianness don't match.  We currently byteswap it in this case (inheriting from our dta117 code) but I'm not sure that this is correct.

I can confirm that it works when the file and local machine are both little endian, which covers the most common situation.

I haven't looked at the writer much, it seems to always write version 114 files. 
