Just to avoid confusion, I assume the first item here means that using the CheckboxTree, one can select a few checkboxes and then click to expand or collapse a node. Because the checkboxes are inside of a html form, their values needs to be submitted (by clicking on a submit button) before they can be persisted on the server side. The same behavior will be seen by filling in a html form and without hitting submit, click on for example a menu item. The form data was not submitted (even tho the form was filled in) and so is not sent to the server. Is this what item1 describes above?
Let me know if this if this will take care of issue 1.
With regards to item two, should the children be selected recursively or only the current node's children? Perhaps this should be tunable?