Allow headers on scheduled messages

Extended Schedule extension methods to allow context callbacks (more for testing, we use interceptors for headers)
Passing any headers from the schedule context to the message context when it is finally sent.
Added a test