Merge pull request #6 from citizen-stig/master

Fix getTestCaseCustomFieldValue "version" parameter type
TestLink API configuration added in Readme
Version changed to 0.4.0-PatchMode
suggestion for a generic testlink api #7

uses decorators
configuration for postional args added #7
server call methods shifted to generic API #7
createTestProject, createTestCase, createTestSuite, createTestPlan,
getProject
server call methods shifted to generic API #7
createTestCase
Conflicts:
	example/TestLinkExampleGenericApi.py
	src/testlink/testlinkapi.py
server call methods shifted to generic API #7
createBuild, reportTCResult
handling of TestLink response error code added #7
server call methods shifted to generic API #7
uploadExecutionAttachment
comments for generic api pre release v0.4.5 #7
server call methods shifted to generic API #7
getTestProjectByName, getProjectTestPlans, getTotalsForTestPlan,
getBuildsForTestPlan
new decorator decoApiCallReplaceEmptyResponse #7
server call methods shifted to generic API #7
getLatestBuildForTestPlan, getTestPlanByName

decorator decoApiCallReplaceEmptyResponse replaced with decarator
factory decoMakerApiCallReplaceTLResponseError
server call methods shifted to generic API #7
getTestSuitesForTestPlan, getTestSuiteByID, getTestSuitesForTestSuite,
getFirstLevelTestSuitesForTestProject, getTestCasesForTestSuite
server call methods shifted to generic API #7
getTestCasesForTestPlan, getTestCaseIDByName, getFullPath

Attention: behaviour getTestCaseIDByName optional arguments are changed
case only optional argument testsuitename is used:
- v0.4.0: getTestCaseIDByName('a_TestCaseName', 'a_TestSuiteName')
- v0.4.5: getTestCaseIDByName('a_TestCaseName',
testsuitename='a_TestSuiteName')
case only optional argument testprojectname is used:
- v0.4.0: getTestCaseIDByName('a_TestCaseName', None,
'a_TestProjectName')
- v0.4.5: getTestCaseIDByName('a_TestCaseName',
testprojectname='a_TestProjectName')
case only optional argument testcasepathname is used:
- v0.4.0: not supported
- v0.4.5: getTestCaseIDByName('a_TestCaseName',
testcasepathname='a_TestProjectName::a_TestSuiteName::a_TestCaseName')

TestlinkAPIGeneric.getTestCaseIDByName will return the server response
1:1, what could be either a dictionary or a list

TestlinkAPIClient.getTestCaseIDByName converts the server response 1:1,
so that  always a list will be returned (consistent with v0.4.0
behaviour)

With v0.4.0, TestlinkAPIClient.getFullPath always returns the error code
234 
reason was, that the argument nodeid was converted to str(nodeid), but
the server expects an integer. with v0.4.5, this is fixed - no
convertion to string will be done
server call methods shifted to generic API #7
getLastExecutionResult, getTestCaseCustomFieldDesignValue,
getTestCaseAttachments

- version changed to v0.4.5-beta
- now, all v0.4.0 API methods from TestlinkAPIClient are shifted to
TestlinkAPIGeneric
decorators use now functools.wraps - close #9
new module testlinkargs and factory decoMakerApiCallWithArgs() #8

module testlinkargs is used as a 'singleton' to register the supported
TestLink API methods and there (positional and optional) arguments
- replace testlinkapigeneric.positionalArgNamesDefault

new decorator factory decoMakerApiCallWithArgs() 
- realize, that the decorator decoApiCallWithArgs could register API
methods and there arguments with new function
testlinkargs.registerMethod()
decorator decoApiCallAddDevKey registers argument 'devKey' #8