[Fix #67] Add `widthInterpolator` option

This allows the widthsMap to be dynamically created using an array of
availableWidths and a function, rather than having to build an
availableWidths object outside of Imager.
Merge pull request #68 from BPScott/width-interpolator

[Fix #67] Add `widthInterpolator` option