Added functions allowing/blocking automatic suspend

When android kernels are used, MCE needs to control whether early suspend
should be used or not. The sysfs interface is used via the new functions:
wakelock_allow_suspend() and wakelock_block_suspend().
Allow suspend when the display state is off

Android kernels will enter early suspend and turn off things like display
even if there stillare active wakelocks.
Disable automatic suspend when MCE process exits

We must not leave the device in early suspend mode when the
MCE process exits.

Added an atexit handler for blocking suspend on normal exits.

Added SIGSEGV etc handlers that attempt to block suspend if
mce happens to crash.

Refactored signal handling to pass signals via pipe to be
processed outside the async signal handler context.

Added mce_abort() function that should be used instead of
_exit() and abort() in mce code.
Workaround for builtin-gconf clients not being GObjects

Do not try to g_object_unref() non-GObject client objects.
Flagged questionable g_main_loop_quit() use with FIXME

There are many places that call g_main_loop_quit() followed
by exit() - which does not make too much sense. However these
seem to be on exceptional code paths, so just flagging them
for now.
Added forward declaration for mce_tx_signal_cb()

Forgot it after shuffling the code to keep the
signal installation list close to signal handler.
Replaced abort() calls with mce_abort()

Simple abort() would exit without blocking suspend.
Added function for blocking suspend on process exit path

For making sure we do not accidentally allow automatic
suspend once we have decided to terminate the process.
Taking wakelocks blocked on process exit path

This way we do not accidentally reclaim wakelocks
that have already been cleaned up.
Block automatic suspend as early on the exit path as possible

This should make it less likely for the device to enter
suspend accidentally when mce is exiting.
Refactored suspend policy evaluation

Now that the suspend policy is no longer based solely on the display
state, the same decision making logic needs to be callable from
multiple code paths.
Enable and document short mce command line options too.
Merge pull request #19 from spiiroin/mce_controls_autosuspend

MCE controls autosuspend