Database of suite events

This implements a basic database for #140 recording suite events and states.

Can be tested by running a suite and the running sqlite3 on the `cylc-suite.db` file.

 * `select * from task_events;` lists recorded task events
 * `select * from task_states;` lists last known task states

N.B.  entries for submit_method_id, submit_method and is_manual_submit are not recorded at present but columns created in db for later input.