Starts on #363, adding initial scaling tests and benchmarks. Generally this is a pretty big clean up of macros and some testing elements too.