pulled LooseBlob and LooseTree into their own files