Bug report #3 - asymmetry of binding

The rules are defined as follows:
  • Green can be followed by Blue
  • Green can be followed by Purple
  • Blue can be followed by Green
Try making a stack of Blue-Green. Then bring a new Purple under the Green - it will bind as it should.
Now detach the Purple from Blue-Green, grab the Blue-Green pair by the Blue block and try to attach the pair on top of the Purple - it will repel.

See all the files in GitHub.