fix Channel::getProperty and added Channel::hasProperty
move bind/unbind where it belongs
documented all methods and events