ARQGRA-262: race condition fixed

The bug has been caused by the following scenario:
1. javascript extension is requested
2. executor checks whether the extension is installed -> it isn't
3. executor installs the extension
4. again, executor checks whether the extension is installed -> it is
5. new page is loaded (all installed extensions are dropped)
6. the extension is invoked -> but it isn't installed -> FAIL

The invocation process has been refactored to avoid this type of race condition:
1. javascript extension is requested
2. try to invoke the extension
3. if the invocation throws an exception, install the extension and repeat the invocation

New configuration property 'javascriptInstallationLimit' has been introduced.
ARQGRA-250: introduced value() shortcut in fluent API
fixed failing javascript tests
ARQGRA-259: inheritance replaced by wrapper in WebDriverWait

* it allows to use 'withMessage()' and 'withTimeout()' method for example
ARQGRA-258: enrichment supports classes wrapping web elements

* Page fragment enricher doesn't throw an exception when it meets
  field with abstract type or type with non empty constructor.
  It skips these fields instead of throwing an exception.

* Added a new enricher which is able to inject fiels with @FindBy
  annotation and type with constructor requiring web element.

* Unfortunately the new enrichment can't be used for injecting
  fields with type org.openqa.selenium.support.ui.Select, because
  the Select class accesses to the web element in its constructor
  and the web element isn't available yet (page is not loaded for
  example).
ARQGRA-199: Provide a way to create Page Fragments dynamically

* To enable this PageFragmentEnricher#createPageFragment and related
methods were made static.

* Test which creates PageFragment from TabPanel
dynamically added.

* Static Arquillian#createPageFragment added