NCBC-624: Refactor View API

From Michael's review:

"One thing that I was confused about was the View query DSL. The required
argument is development, but the view and design document name could be
omitted by the DSL user since they are elements like limit and so forth. I
think it would be better to turn this around. For example in Java there is
ViewQuery.from('designDoc', 'view') and then the DSL starts.
So you can never miss design doc and view name by accident. And I think
you can go with a development = false default, since that's what people
use most of the time. I think the main question is, if I miss adding
design doc or view name by accident, does it blow up at runtime or at
compile time?"

Change-Id: I4fc9d716f674df882156cdd1763b8d43204e7d90
Reviewed-on: http://review.couchbase.org/41387
Tested-by: Jeffry Morris <jeffrymorris@gmail.com>
Reviewed-by: Brett Lawson <brett19@gmail.com>