try3.rb / metaprogramming spike tidied up and to Qs inserted