Adding the metaprogramming examples in an attempt to understand the intricacies
involved with dynamically setting methods at runtime