First stage of external data cleanupIn this change, different parts of external data were refactored.The goal was to make it more modular, easier to maintain and allowhigher flexibility for extension in addition to reducing code redundancy.Change-Id: I04a8c4e494d8d1363992b6fe0bdbe6b2b3b7b767Reviewed-on: https://asterix-gerrit.ics.uci.edu/566Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>Reviewed-by: Murtadha Hubail <hubailmor@gmail.com>