Make client 0.5

Fix these issues:
fix #402: doesn't support type in IDL
fix #378: make datum for each language
fix #308: works in python 2.6
fix #205: elimitate rpc error2, instead throw special exception
fix #174: specify cluster name in constructor
fix #399: doesn't support tuples in IDL
fix #359: support timeout in python/ruby clients
fix #269: change timeout option in C++ into int
fix #252: returns use defined object in ruby client