Limits execution time

This PR fixes issue #362.

The **default execution time limit is 5 minutes**, but you can configure this value in your `competition.yaml` on a per-phase basis:
```yaml
phases:
  0:
    ...
    execution_time_limit: 60 # 1 minute limit
    ...
  1:
    ...
    execution_time_limit: 600 # 10 minute limit, this phase has more data to compute
    ...
```