Osk position
This is an attempt to make sure the keyboard always behaves nicely by promoting it to overlay whenever needed. "Needed" is determined by the namespace property of layer shells.
The main advantages over other proposals are providing a centralized place to set policy on privileged applications placement, and simplicity.
The main disadvantage is that with heavier usage, a need might appear to either make assumptions on what clients look like, or to notify them of changes.
At the moment, however, I think this is the least intrusive solution to squeekboard#57 (comment 46643)
WIP because it only makes sense after keyboard actually appears.