rework parsing, fixing MemberLists in particular

This fixes `MemberList` parsing but also changes the behavior for structured responses such that predefined types such as `SimpleLists`, `Elements`, `MemberLists`, and `ElementLists` will exist in the result structure with a undefined value (`None` or `[]`) for more natural usage.

I added the `GetPackageTrackingDetails` call from the Outbound API and reviewed the various Fulfillment API response specifications which make use of MemberLists.

It might make the most sense for @elbaschid to test this and then create a new PR with the bits I skipped from #1701.  I took the liberty of adapting @elbaschid's gist into a much larger set of unit tests styled off of @toastdriven's `test_connection.py` -- thanks to you two for that.