added startup dialog skeleton, made a working template inheritance hierarchy, and started work on dynamic loading via js