Autoyast support + code improvements

This is a quite big PR, but for AY support I needed to share some code between standard client and AutoYast client. Therefore I moved the dialogs to separate files, added more tests and added some improvements.

- Many dialogs were moved so separate files
- UI Workflow definitions as well
- Added HTTP redirection support in download code
- Allow specifying SSL certificate fingerprint in AY, the certificate is imported when the fingerprint matches (no need to to download the certificate via a side channel)
- Download and import SSL certificate during AY installation (backward compatibility with old registration)
- Download available addons from server in AY config mode (if the system is registered)
- Install addons in AY installation
- Created `SslCertificate` class for certificate related code
- Added [Inch CI](http://inch-ci.org/) support for checking `yardoc` comments
- Splitting the classes and methods improved CodeClimate mark by [+0.39 (from 2.1 to 2.49)](https://codeclimate.com/github/yast/yast-registration/compare/autoyast_support)
- Enabled only the new RSpec syntax in tests, fixed the old style
- Added tests increase code coverage by +4.8%
- The AY RNC schema has been updated
- Implemented "Modified" flag, registration is skipped during clonning (bnc#888168)

<small>*Sorry for such a big PR, I should have asked for review continuously...* :pensive: </small>
I found quite hard to read all such namespaces. I think there is no collisions so you use simple `ret = AddonRegCodesDialog.run(Addon.selected, known_reg_codes)`