use an accurate baseline offset
translate() and scale() now support Pair types

- Points and Sizes are now valid args
minor tidying