Refactor Directed.Message

If we fix the order of the function definitions, we don't need the guard clause. Not a big deal but just nicer to read me thinks.