Feature/snippets

This PR may need some tweaks.  It has the snippeting changes we've discussed, including source and id attributes for each snippet.

I've noticed that there is a validation issue in browser queries (that fa4caac turns into 400 rather than 500) it has do do with value and range-operator in opposite order to what the schema requires.

I'm not 100% confident in this branch but wanted to get it out there so you can look at it.