FS Preprocessor function intial changes

This does not yet even compile.  Just capturing changes now so I can transport them.