Should I create a single membership for the head of the family or create memberships for every member of the family?
Create a membership type for households. Select 'Household Member is' as the Relationship Type when setting this up. This means the direct member is a Household and you want all Household Members to be automatically granted memberships.
Then grant membership to the household contact, and create a "household member of" relationship between individuals and the household. This works properly as of version 1.7 (it doesn't work correctly in 1.6 and prior releases).