all: fixed clang build, reorganization

Apparently clang is not clever enough to into _Generics. The problem was it was thinking that volatile (double,ints,whatever) were a separate type. However, volatile is simply an attribute, not a type-transforming-changing thing. GCC was cool with it though. Remove the volatile ATTRIBUTE and hope the compilers are CLEVER enough to know when not to inline the variables. If they aren't, then I dunno. We can't be more obvious about not wanting to inline stuff, we're sending their bloody pointers up to somewhere in space, and they might probably change.