Implement C/C++ export support for non contiguous local fields

As a user I want to be able to split a field across multiple ranges within the same register.

eg. Maintaining an existing register with multiple fields; a "maintenance policy" requires that existing fields do not change location, but that one field change size and there is space in the register for the size change.

Edited by Russell