Major refactoring from Thomas Harning Jr. (Bug [#766]) * Removes use of implicit arg    * Better backwards compatibility (LuaJIT doesn't construct this 'arg' table)    * More performant (less memory allocations)  * Adjusted the protect call to use value-processing tail call so    that it didn't need to store the return values in a table to perform    the simple modifications  * Optimized the 'set' implementation to use built in length operator    to avoid usage of 'table' functions for speed  * Send does not use the 3rd return value from client:send properly...    it is not the amount of data sent in that request, it is the last index from    which data was sent.  It 'is' the amt sent if the 'from' value is 1.    Fixed this issue...  * Send does not support user-specified 'from' and 'to'.  Adding support    is trivial since it fits into the current data sending scheme  * Adjusted wrapped socket to reflect this new feature.
Major refactoring from Thomas Harning Jr. (Bug [#766])
* Removes use of implicit arg
   * Better backwards compatibility (LuaJIT doesn't construct this 'arg' table)
   * More performant (less memory allocations)
 * Adjusted the protect call to use value-processing tail call so
   that it didn't need to store the return values in a table to perform
   the simple modifications
 * Optimized the 'set' implementation to use built in length operator
   to avoid usage of 'table' functions for speed
 * Send does not use the 3rd return value from client:send properly...
   it is not the amount of data sent in that request, it is the last index from
   which data was sent.  It 'is' the amt sent if the 'from' value is 1.
   Fixed this issue...
 * Send does not support user-specified 'from' and 'to'.  Adding support
   is trivial since it fits into the current data sending scheme
 * Adjusted wrapped socket to reflect this new feature.

keplerproject/copas