Boost.simd reloaded

This code does not work:
```
struct A {
  static const int value = 0;
};

int main() {
  typedef A& B;
  return B::value;
}
```
while this one does

```struct A {
  static const int value = 0;
};

int main() {
  typedef A B;
  return B::value;
}
```