Enhanced boost function_type example class "interpreter" to make it more general