Add support for user-defined passwords that would protect access to the application

- Add AppPasswordActivity.java, which is to be the new starting activity
- Add functionality to read and write persistent data through AppPasswordActivity for the purpose of keeping track of app information
	-- App info includes password preference, password hash (if password is enabled) and/or password in plaintext (if disabled)
- Add dialogs for password mismatch and incorrect password entry
- Tweak AndroidManifest such that AppPasswordActivity is the new default activity
- Add fragment_app_password.xml and fragment_app_password_first.xml for the layout of AppPasswordActivity
	-- XML file to be used depends on whether or not a password has been saved by the application
- Change OTPItem to keep track of password preference and keystore password
- Add functionality for writing persistent app information through MainActivity
- Add menu items and menu functionality to MainActivity
- Add functionality to disable app password through the menu
- Add functionality to clear all app data through the menu
- Change EnrollmentFragment and OTPFragment to obtain keystore password through OTPItem rather than hard-coded values
- Change OTPFragment such that it will not generate six-digit codes if a seed does not yet exist
- Add Bcrypt.java for the purpose of using bcrypt as the password hashing algorithm
- Add more string values to strings.xml
- Add very basic support for UBER Keystore (strictly work in progress; not yet functional)