adding course directory spec
implementing course directory, extracting common dm pattern
adding timezone config