a little more docs
more refactoring
pick the bridge