Added photo pricing and sizing stuff

Because photos can be resold in different print sizes, different sizes
and prices must be available to the user without duplicate entries.
Added option functionality

Anything with varying sizes can now use the optionselect button type to
define multiple different prices/types.