Keystore 2.0: Key garbage collection.

This patch introduces a key life cycle state in the keyentry table. We
use this to implement key garbage collection.
This patch:
 * Introduces the key lifecycle.
 * Database functionality for marking a key unreferenced, getting an
   unreferenced key, and purging keys from the database.
 * Implements the deleteKey API call of IKeyStoreService.
 * Implements async_task, a singke on-demand worker thread.
 * Implements a garbage collector that collects unreferenced
   keys and disposes off sensitive key material.
 * Remove security level from the blobentry table.

Bug: 159340471
Test: keystore2_test
Change-Id: I84ffd64eaae1b86c645b50f100b1b399b9e16e40
7 files changed