MB-9968 Use shutdown_sync() for stopping view compactor

During a scenario when stop_compactor() is invoked by couch_view_group process,
it sends `stop` message to the native compactor driver process and block waits
for that process to exit. But if at the same time view compactor driver has
completed the native process and tries to send `compact_done` using
gen_server:call() method to the couch_view_group process, both of them can
be performing blocked call on each other and it becomes a circular dependency
entering into a deadlocks state.

The native compactor can die by itself whenever the erlang port is closed
by detecting the stdin close. Since the compactor does not operate on the
current active index file, when the compactor erlang driver process is
terminated we do not need to ensure that native process has been died.
It can detect the stdin pipe close and exit asynchronously.
Replaced shutdown_wait() method with erlang process force kill method,
shutdown_sync() to stop the running compactor.

This reverts commit d0d76be2cd926e647cc7c7f7d4c07341c9813187.

Change-Id: I34e616ee2127d8a271f4364884fb8337f91a03fa
Reviewed-on: http://review.couchbase.org/33034
Reviewed-by: Volker Mische <volker.mische@gmail.com>
Tested-by: Sarath Lakshman <sarath@couchbase.com>
Reviewed-by: Sarath Lakshman <sarath@couchbase.com>