Many performance improvements and some bug fixes

Also CBORObject.Tag was renamed to CBORObject.InnermostTag, and more
tests were added.