webui: move RPC result extraction logic to Adapter

It enables declarative extraction of values from partial
results of a batch commands and also further extensibility
in custom adapters.

The default adapter has detection logic for this extraction so
it can use bare record or extract data from normal or batch RPC
command.

Minor change of user plugin fixed:
https://fedorahosted.org/freeipa/ticket/4355

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
webui: expose krbprincipalexpiration

https://fedorahosted.org/freeipa/ticket/3306

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
ipaplatform: Create separate module for platform files

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Move service base platfrom related functionality to ipaplatform/base/service.py

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Move default implementations of tasks from service.py.in

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Create default implementations for tasks that were missing them

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Add base fedora platform module

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Moved Fedora 16 service implementations and refactored them as base Fedora module service implementations

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Move restore_context and check_selinux_status implementations to base fedora platform tasks

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Do not require custom Authconfig implementations from platform modules

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Remove legacy redhat platform module

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Move Fedora-specific implementations of tasks to fedora base platform file

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Change platform dependant code in freeipa to use ipaplatform tasks

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Change service code in freeipa to use ipaplatform services

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Change paths dependant on ipaservices to use ipaplatform.paths

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Remove redundant imports of ipaservices

Also fixes few incorrect imports.

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Move all filesystem paths to ipaplatform.paths module

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Remove remnants of the ipapython/platform

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Change makefiles to accomodate for new platform package

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
ipaplatform: Let fedora path module use PathNamespace class

https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>