Add Timeout option to the engine

Add a timeout interval option to the engine to throw a TimeoutException
when the specified interval has passed
Merge pull request #68 from honestegg/add-timeout

Add Timeout option to the engine