Add itemCreate to allow freeInput with objects

Allow use of object collections AND freeInput at the same time by adding an itemCreate option. If set and we're allowing freeInput it will be called automatically very early in the .add method to construct an object to hold (and wrap) the incoming string value.