I updated the POC.
You can now declare the move constructor & move opAssing like the
following:
```
struct S
{
this(ref S) @move {} // move constructor
opAssign(ref S) @move {} // move opAssign
}
```
Or with rvalue ref:
```
struct S
{
this(@rvalue ref S) {} // move constructor
opAssign(@rvalue ref S) {} // move opAssign
}
```
All implementations use rvalue ref internally. It's just a matter
of exposing in the language it or not.
Nice work!
I definitely think it needs to be on the argument and not on the method, or it can't be used on functions that take more than one argument.