timezone: data file should be 32 bit aligned

The zoneinfo.dat file is memory mapped and then read as an int array.
On some platforms this is causing alignment errors (SIGBUS) because
the records are not 32 bit aligned.

My changes: Fixes for 4.2 and also updates zoneinfo to the latest version

Change-Id: Ieea8ef07e49ef86d139c52ebfccf4159c0ebd887