[sys/full_coverage] Add support for stopping the system gracefully.

Summary:
The system currently doesn't have a way to exit cleanly. This is a
problem, since we would like to be able to start the system, run full-system
tests against it and then stop the system. This is needed both for getting
coverage reports about the system as well as continuous integration. The
changes mainly catch the signals and then kill the greenlets, in addition
to a script that will run the services and then run one of the tests.

Booya testing!

Test Plan: review the code. run the tests.

Reviewers: kav-ya, khamidou

Reviewed By: khamidou

Subscribers: spang, khamidou

Differential Revision: https://review.inboxapp.com/D420