elliptics: moved read/write to purely go objects, added go structures and helper functions
Merge pull request #7 from bioothod/master

elliptics: moved read/write to purely go objects, added go structures
Adopt for golang1.3 and packed structs
errors: switched to pure Go error implementation, not just error code
errors: operate on error pointer like described in golang tour
Avoid collecting of callback passed to C
Merge branch '1.3' of github.com:noxiouz/elliptics-go
session: added more setters: ioflags, cflags, trace id
session: switched read/write functions to work with []byte instead of string and get rid of unused copies
write: fixed _ = data typo
session: added parallel lookup method
elliptics: initial v2.26 implementation
log: elliptics node writes its log intormation into standard Go log.Logger now
session: implemented prepare/write/commit methods, use io.Reader in upload

These methods are used for large file upload - we prepare enough
space on disk, put multiple chunks into the file and then
commit desired size. Default chunk size is 10m, files less than that
are read into memory and uploaded via common write_data() method.
Reading from io.Reader can return less than maximum chunk size,
we start writing data into elliptics as soon as there is something.

Since upload methods are now using io.Reader they do not buffer
too many data, at most chunk side per goroutine.

Returned channel yet contains a mess of combined json objects each
per written chunk, this will be cleaned next.
chunk-write: only put the last write result, i.e. the one after commit message, it contains correct information
Merge branch 'v2.26' of github.com:bioothod/elliptics-go into bioothod-v2.26

Conflicts:
	elliptics/gologger.cpp
	elliptics/logger.cpp
	elliptics/node.cpp
Merge branch 'bioothod-v2.26' into 2.26