Complete restructure, LMH,ICD and ATC seems to be parsed correctly, and index see to work. Hmm, that's not true. Due to not handling null values it will crash. Go uncomment out a line in LMH.java in getFiles().