Introduce new object-oriented TLV parser/decoder/encoder

This introduces a new TLV library that heavily builds upon python object
oriented concepts.  Contrary to classic TLV parsers it doesn't focus on
the structure of Tag, Length and binary Value only, but it supports
actual decoding/interpretation of the value part into some kind of JSON
serializable dict.  The latter can be achieved by imperative
encode/decode methods, or by using our existing declarative 'construct'
based approach.

The TLV library supports both BER-TLV and COMPREHENSION-TLV for both
nested and non-nested TLV definitions.

As an example we include TLV definitions for a number of CAT (Card
Application Toolkit) IEs.

Change-Id: I7fc1699443bc9d8a4e7cdd2687af9af7cc03c30e
diff --git a/docs/library.rst b/docs/library.rst
index f531ec5..6ecd55a 100644
--- a/docs/library.rst
+++ b/docs/library.rst
@@ -80,6 +80,11 @@
 .. automodule:: pySim.construct
    :members:
 
+pySim TLV utilities
+-------------------
+
+.. automodule:: pySim.tlv
+   :members:
 
 pySim utility functions
 -----------------------