fix naming of things
add warning regarding metaprogramming