title: Lua inheritance
body: <p>I have two classes in Lua.</p>
  
  <pre><code>test1 = {test1Data = 123, id= {0,3}}
  function test1:hello()
      print 'HELLO!'
  end
  function test1:new (inp)
      inp = inp or {}
      setmetatable(inp, self)
      self.__index = self
      return inp
  end
  
  test2 = {}
  function test2:bye ()
      print 'BYE!'
  end
  function test2:create_inst( baseClass )
      local new_class = {}
      local class_mt = { __index = new_class }
      function new_class:create()
          local newinst = {}
          setmetatable( newinst, class_mt )
          return newinst
      end
      if baseClass then
          setmetatable( new_class, { __index = baseClass } )
      end
  
      return new_class
  end
  
  a = test1:new({passData='abc'})
  print (a.test1Data, a.passData, a:hello())
  c = test2:create_inst(a)
  print (c.test1Data, c.passData,c:hello(), c:bye())
  </code></pre>
  
  <p>I want to inherit <code>test2</code> from <code>test</code> but leave in the specified <code>test2</code> methods <code>bye</code>.
  Everything works except for <code>bye:method</code>.
  How can I solve this problem?</p>