add optional header
Restructured to allow overriding via themes