Fix two GATT bugs.
Fix two GATT bugs.

* Always return either BLE_HS_EAGAIN or BLE_HS_EDONE from all GATT
  client kick functions.  Other return codes caused ambiguity for the
  caller.

* Don't set a GATT entry's pending bit until it is entirely filled in.
  Half-filled entries were being processed prematurely when a low
  priority task initiated a GATT procedure.

wes3/incubator-mynewt-core,mlaz/mynewt-core,andrzej-kaczmarek/apache-mynewt-core,andrzej-kaczmarek/apache-mynewt-core,andrzej-kaczmarek/apache-mynewt-core,andrzej-kaczmarek/apache-mynewt-core,wes3/incubator-mynewt-core,IMGJulian/incubator-mynewt-core,IMGJulian/incubator-mynewt-core,andrzej-kaczmarek/incubator-mynewt-core,IMGJulian/incubator-mynewt-core,mlaz/mynewt-core,wes3/incubator-mynewt-core,andrzej-kaczmarek/incubator-mynewt-core,andrzej-kaczmarek/incubator-mynewt-core,andrzej-kaczmarek/incubator-mynewt-core,IMGJulian/incubator-mynewt-core,mlaz/mynewt-core,andrzej-kaczmarek/incubator-mynewt-core,IMGJulian/incubator-mynewt-core,wes3/incubator-mynewt-core,wes3/incubator-mynewt-core,mlaz/mynewt-core,mlaz/mynewt-core