smoother syntax for parser using metaprogramming, add !r [class] shortcut for ready