Made the application (i.e. VirtualFactory.java) a Singleton. Organized, renamed and cleaned a few things.
code cleanup