MAINT refactor fast_dot

* check for NumPy >= 1.7.2 at import time, instead of in every call;
* save a function call when newer NumPy is available;
* rewrote documentation;
* put the docstring on fast_dot instead of _fast_dot;
* remove spurious warnings for matrix-vector multiplications (some of these
  are suboptimal with older np.dot, but the good ones were triggering a
  warning as well).