Updated DAL so it's a lot easier to read, is sorted by table