Meta-object library for C++