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>
this is strange method as it do not use any instance variable. To be honest I found it very confusing as for me it more looks like `fingerprint.type_match(type)` then `cert.fingerprint_match?(type, fingerprint)`