Do not rely in Link.Rel for values and parameters, allow configuring APIURL and workaround for random errors with schemas with references between resources

@cyberdelia I needed some modifications, so I just went ahead and implemented them.

This includes:
 - PR #26 (support for link.targetSchema)
 - [Allow configuring service's API URL](https://github.com/ernesto-jimenez/schematic/commit/c31814d49983bb0d314737028de3279fc3be0af7) in order to be able to use the same library with different environments by changing the URL.
 - [Workaround to prevent failure when there are references between resources](https://github.com/ernesto-jimenez/schematic/commit/048a1f9899598407ed5e645a7894b2da729b94c6).
 - Values and parameters not relying on Link.Rel: [full explanation, including caveats](https://github.com/ernesto-jimenez/schematic/commit/3b605c549ea3652ca64c1c4a34bcb508eee60f5c)

Let me know what you think.
Ok, I got it.

The issue was that ```querystring``` doesn't accept nil values we couldn't simply do ```if q != nil``` because when queryparams are optional we get a pointer to a nil variable, in which case ```q != nil``` but ```querystring``` would throw an error.

I've updated ```querystring``` to accept nil values and just return an empty ```url.Values```. Hopefully the'll merge it: https://github.com/google/go-querystring/pull/5

In the mean time we should be OK, since we are depending on my fork. I'm going to do a commit simplifying this.