Added 2-Factor Authentication, improved efficiency, added support for different output path