Your application is going to depend on a
Plugin Framework[
^].
It sounds like your main application isn't going to do much of anything, other than supply a common interface for a bunch of plugins. Start by reading the stuff behind the post link and think about what data and interfaces are going to be common between all of your plugins.