I'm using #1 right now. The problem is it needs logic to ensure you only pick one of each option. Having a slider where you only have the four letters or tokens, like N, E, S, and W, and all you can do is rearrange them in the order you want, then you don't have to worry about duplication.
VCL has some things like menu bars that let you rearrange things that way. I don't know if there's anything like that in any of the WEB Core component libs, which is why I'm asking.