add meta data struct
Merge branch 'master' of https://github.com/shiqingma/526p2

Shiqing has some local modification. We need merge this with the shared version.
Some changes. But I think there are problems.