Fix possible infinite wait on prepare error.

If multiple goroutines try to prepare the same statement at the
same time and the goroutine which prepares the statement errors
it will never release the other goroutines from the waitgroup
wait.

Fix this by storing the error and info in a struct and always
call WaitGroup.Done()
Update README.md
Merge pull request #85 from fclairamb/patch-1

Update README
Fixes UUID Timestamp, also adds FromTime function

Fixes bug where nanoseconds were not being pulled out of the 60-bit
UUID time correctly. Cleans up that code to use timeBase rather than a
special hex value.

Also adds FromTime function to generate Type 1 UUIDs from arbitrary
times.
Re-use UUID package for Timeuuid generation
Delete the prep info struct if it failed to prepare
Use bufio to read from the underlying socket
Tweaks FromTime documentation to match conventions

Also adds me to AUTHORS
Merge pull request #86 from phopkins/custom-time-uuid

Fixes UUID Timestamp and add FromTime function
Join authors
merged AUTHORS
Support unmarshaling of "uuid" type

Allows unmarshaling of CQL "uuid" values in addition to the existing
"timeuuid" support. Only "timeuuid" may be unmarshaled to time.Time
values, however.

Also adds a test for this type.
Merge pull request #84 from Zariel/prep-cache-errors

Fix possible infinite wait on prepare error.
Merge pull request #82 from phopkins/unmarshal-uuid

Support unmarshaling UUIDs
moved separate uuid package to the main package