start of experimental new API (v2) for libdmconfig

Start rewriting some of the API logic. This add some initial request
decoder functions that are *much* simpler to use then the old one.