Refactor MailSettings controller

- Do not store the password automatically (fixes https://github.com/owncloud/core/issues/11385)
- Refactor to AppFramework
- Add unit tests
How should this be broken? - As far I understand `OC_Mail::send()` will still work.