king promotion, also minor readability and docstring fixes