basis.layout: add support for getViewportRect and getTopLeftPoint to calculate coordinates relative to specified element