simplify WBEMConnection::createInstance()

Based on Devchandra's input. When creating a new CIMInstance, no CIMInstanceName is needed for construction of the object. Namespace can be passed via optional parameter of CreateInstance(). Previous API is unchanged due to PyWBEM compatibility.
fix README.md to reflect the proper steps for generating setup.py
introduce WBEMConnection::request_accept_languages
fix documentation build paths
fix (Build)Requires and typos
introduce conditional build of documentation in lmiwbem.spec
fix missing CIM types CIMValue::asLMIWbemCIMValue()
introduce LMIWBEM_UNREACHABLE macro for CIMValue::asLMIWbemCIMValue()
minor style and grammar polishing in docs
introduce WBEMConnection::setCredentials()
add missing hostname property to CIMInstance(Name)
bump release version to 0.4.0
bump release version to 0.4.1-pre
doc: switch to rtd theme
getter/setter refactoring

CIM and related classes now have their getters/setters refactored. This means, there are native methods and "Py" methods, which always return Python object. Getters, which work with strings always return Unicode now. New module lmiwbem_convert.h now holds all the conversion stuff.
always use isinstance(), when working with Python objects
fix CIMInstance::values(), ::items() type inconsistency

When a non-CIMProperty is assigned to a certain property, CIMInstance::values() now returns such property value and doesn't raise TypeError
allow to pass list/tuple of handlers to CIMIndicationListener::addHandler()
introduce CIMIndicationListener::repr()
introduce None constant