add the missing import
Remove/hide AndroidAppHelper.createResourcesKey() methods

They are no longer used in XposedBridge, only internally. No module in the
repository used these, there isn't much value of doing so anyway.
Fix delayed configuration update for forwarded resources

addActiveResource() created the ResourcesKey with the current
Configuration in Android 4.2 and higher.
However, this configuration is actually used to override the system
configuration, it should be "null" unless explicitely requested otherwise.

Due to this bug, resource replacements that forward to the module's
resources were loaded with an outdated configuration. For some reason, the
new configuration was applied on the next configuration update, so it was
always one step behind.

Now the system configuration is applied correctly.
More refactoring in AndroidAppHelper

Also, actually use the isThemeable parameter in addActiveResource(), even
though it doesn't seem to be of much value.
Add helpers to find (and hook) constructors, just like methods
Improve error message for hooking abstract/interface methods
Deprecate IXposedHookCmdInit

See https://github.com/rovo89/Xposed/commit/4a492e9e531dd3e1e330c4e9d5ca0498757f7bf5
Cosmetics (more or less)
Use reflection in currentApplicationInfo()
Use reflection in some XResources methods
Add .gitattributes
Normalize line ending and whitespace
Don't override Resources.loadXmlResourceParser()

Instead, override the public getAnimation(), getLayout() and getXML()
methods.
Override getLayoutDimension()

These methods are used especially when inflating views, so they should use
the dimension replacements as well.
Override getColorStateList()

XResources claimed that this was handled by loadXmlResourceParser(), but
in fact it wasn't handled by the variant that was overridden previously.
Now it is handled.

Possible replacements are ColorStateLists, integers (handled as color
constants) and resource forwarders.
Rename debug.log to error.log

That's what the file is actually used for. Also add a warning in the
Javadoc to avoid flooding the log with debug messages.
v51
v52: Add getPackageNameDuringConstruction() method

App Settings (and possibly other modules) didn't work correctly anymore
since 98619db817207a0dc3d92caf105341d713658682 changed the way XResources
objects are created. One of the intentions was to avoid calling the
constructor again. However, App Settings hooks a method which is called
inside the Resources constructor. This constructor is still called once
for the original Resources object, but obviously XResources.getPackageName()
can't be used for this object.

This new method can be used to fill this small gap between the creation of
the Resources object and its conversion to XResources. It will throw an
IllegalStateException if called from somewhere else.
Synchronize access to resDirPackageNames

This fixes some cases where map entries get lost due to concurrent write
access. Thanks to @Tungstwenty for the analysis.
Retrieve resources package name just once

It's not expected to change, so we can save some computing and locking by
retrieving it only once during the initialization.