Additional Testing Efforts and Some Minor Changes

My team is working on a project which was originally prototyped using your portable Evil-DICOM.

Over the course of this work, the team has written a handful of automated tests and made some changes to the code in some places.

Although we have decided to move on to the next phase using your fork of Fellow Oak DICOM instead, we would like to contribute back our changes in this pull request in case they contain anything which is of any value to you. The commits were structured in such a way to make it as easy as possible for you to cherry-pick whatever you want in case you only want certain parts.

In our testing efforts, the team has discovered some situations where the library does not return what they would expect. These automated test cases currently fail but again they are provided to you in case you find them valuable. The failing cases are listed below:

Most of the testing was done in the area of endieness.

* ``TestDICOMDataLengthExplicitLittleEndianOdd``
* ``TestImplicitLittleEndian_002``
* ``TestImplicitLittleEndian_002 (Integration)``
* ``TestImplicitLittleEndian_004``
* ``TestImplicitLittleEndian_004 (Integration)``
* ``TestImplicitLittleEndian_009``
* ``TestLengthReaderBigEndian``
* ``TestNullBinaryArrayReadBigEndian``
* ``TestReadIndefiniteLengthBigEndian002``
* ``TestReadItems``
* ``TestSkipItemBigEndian``
* ``TestVRUnlimitedTestEncoding``

The team would also like to thank you for your efforts in trying to bring DICOM libraries in a PCL format which have helped us a good amount.