Override Entire Module Page using Template I would like to override the entire page created by my custom module, I've used the hook_theme function but my template only affects the markup within the content region, I need to define the markup of the entire page inside the template file, including the header footer etc. 

I know that this can be done in the theme but I need to to keep the template file within the module itself.
You want to override the deliver callback for the menu route.
https://api.drupal.org/api/drupal/includes%21common.inc/function/drupal_deliver_page/7

But notice this might be very invasive and cause you issues later on.