Maybe plugins is the solutions, but Idon't know nothing about them.
Anyway I'm writing a tool that can process data, different types of data. For each type of data I've a couple of modules which know how to deal with this data. So with time more and more types of data can be included, just by adding new modules that know how to deal with this data.