initial pass at allowing larger data types for processing

This is an initial check in to allow larger data types to be used for
CTL processing at compile time (i.e. double)