Updating Halt and adding the executor

Executor added (no unit tests).

Updating halt to handle function calls better.