adding support for selectTag.option tag to accept attributes

Adding support for selectTag.option tag to accept attributes other than value i.e. data-*, related to issue #325 on mde/geddy#325.

Still supports both of the other 'signatures';  

selectTag([a,b])

selectTag([{text: "a", value: "a"}, {text: "b", value: "b"}])

and now this one:
selectTag([{text: "a", attrs: { data: {thing: "something"}, value: "a" } }, {text: "b", value: "b", attrs : { value: "c", selected: "selected"}}], "b")

Notice how you can pass the 'value' or 'selected' attributes outside of the attrs object, and they do take precedence over the inner ones, just to support backward syntax.

Wrote 3 more assertion tests for the selectTag that exercises the new code. All test pass. 

Would love to hear feedback. 
Great work guys. keep it up.