Fixed an issue with type deduction and overloading of the ExecuteAsync on non MS compilers
Disable warnings being generated by external resources.
Removed pragma from cpp file (should only be in headers)
Fixed removed extra .second
Added python header needed on linux builds
Removed unneeded qualifiers on function names
Fixed ambiguous return type.
Fixed issue where accessing map element by [] and .at()
Fixed order of initialization
Fixed issue where passing the address of a temporary by non-const ref.
Removed pragma once from cpp file
Fixed the way container is returned
Removed unused variables
Make use of the aquired end iterator
Removed extra /* start comment
Take return values either by value or const& (in this case value was selected).
Temporaries cannot bind to & only const&
Merge pull request #567 from apathyboy/linux_fixes

Linux fixes!!
Merge remote-tracking branch 'anh/develop' into develop