Margin= method

Partially addresses #622. There's probably a prettier way to do this . . .

You may notice that in the following app:
```ruby
Shoes.app do
  f1 = flow do
    background lightblue
    para "This is a flow"
  end
  button "click" do
    f1.margin = [10,10,10,10]
  end

  f2 = flow do
    background lightblue
    para "This is another flow"
  end
  button "click" do
    f2.margin = 10
  end
end
```
The background doesn't adjust to match the new margins. I think this has something to do with #617 or #618, so I'll play with this for a separate PR.