rename Target to Future, Wait to Result
Rewrite Target as Future

No longer imports package sync, using a future implementation
derived from the discussion on golang-nuts.

https://groups.google.com/forum/?fromgroups=&nomobile=true#!topic/golang-nuts/H5EekTspSVg