static void Main(string[] args)
        {
            var options = new ApplicationArguments();
            if (!CommandLine.Parser.Default.ParseArguments(args, options))
            {
                return;
            }

            var dir = Directory.CreateDirectory(options.ExportDir);

            switch (options.Action)
            {
                case Action.Export:
                    //setup export writer.
                    ExportTemplatesToFolder(options.Key, dir, options.TemplateName, options.IgnoreDates);
                    break;
                case Action.Import:
                    ImportFromFolderToMandrill(options.Key, dir, options.TemplateName);
                    break;
                case Action.Delete:
                    DeleteTemplates(options.Key,
                            CreateBackupDir(dir),
                            options.TemplateName);
                    break;
                default:
                    throw new ArgumentOutOfRangeException();
            }
        }