A journey, on my way to a metaprogramming state machine!