* method for creating parent collection was added to Client struct
"func (c *Client) createParentCollection(itemPath string) error" was added to request.go file
* using Client's method to create parent collection
in following methods:
Client.Write()
Client.WriteStream()
Client.copymove()
deadlock is impossible in method Client.copymove() because of paragraph #6 section 9.8.5 (https://tools.ietf.org/html/rfc4918#section-9.8.5) and paragraph #6 section 9.9.4 (https://tools.ietf.org/html/rfc4918#section-9.9.4) of RFC 4918 (https://tools.ietf.org/html/rfc4918)
* install dependencies script was added to Travis-CI file
* testing was added to Travis-CI file
* error wrapping was removed from Client.put() method
* using an early return on error in case of 409 in Client.Write() method