acm.c: Change cache update mechanism

Currently each time new PRDB is received (from access layer
or preloaded from disk), the old cache is not being fully
cleaned, but only updated with new records and records that
were present in previous PRDB version but are not present in
current are deleted.

Such mechanism may fail and an unexpected behavior might
occur if some cache records were received from SA and not
via access layer. Such records won't be removed from cache
even if consequent PRDB version will not contain them.

In order to prevent such scenarios, acm caches are cleaned
before each PRDB update.

Signed-off-by: Ilya Nelkenbaum <ilyan@mellanox.com>