What do you mean by "header and detail tables" I am not familiar with these terms in the context of database design.
They are used in User Interface context: like header is a 'person', and detail contains zero, one or more of his 'known addresses', past or present.
In a database environment this header-detail concept is one a one-to-one basis translated in two tables: one for the PERSON and one for the ADDRESS. An address in the ADDRESS table will contain a refecence to the record of person 'John' in the PERSON table. This is called a parent-child relationship: the child record (ADDRESS) has a references to the parent record (PERSON).
Is this what you meant ? If it is, leave it as it is. You will get yourself into mayor trouble if you would change it. It is called "normalisation". I guess you know what it is, but if you don't, read a book or take a course about database design, it is not complicated, but it is a basic skill you need to have if you want to do anything serious on a database.
What you may have read is that in data warehouses, for ease of use and reasons of speed, all this information is denormalised into one big table. It is usefull if you want to make reports, based on this, but it is not meant to be used to add/alter/delete data like in a production environment.