Compile time safe keypath

This allows it to be used to initialize static variables with the same type-safety and autocompletion benefits, at the cost of complicating the macro’s definition.

Note that this can only apply to the two-argument variant, since there is no way to split the string at compile-time.

The trick this uses to take the type of a block which contains some compiler-visible mechanism might be useful elsewhere; is something like that already available elsewhere?