protobuf updates.

- error fields should be defined as optional.
- Index is now IndexInst. There is a bit of duplication but simplifies the
  logic on the indexer side.
- IndexPartition message is removed, instead different partition messages
  are to be contained directly within IndexInst.
- added TestPartition scheme for testing purpose.
- variable re-naming and message re-naming.

Change-Id: I38ff835f2ccd1c2c3be3610846a915e648fb88b0
Reviewed-on: http://review.couchbase.org/38475
Reviewed-by: John Liang <johliang00@gmail.com>
Reviewed-by: Pratap Chakravarthy <prataprc@couchbase.com>
Tested-by: Pratap Chakravarthy <prataprc@couchbase.com>