fix up docs, some types, and reconnect() function