seperate data building and loading; some work on tags