Cast haste self whenever we're not very fast, too
Cast haste self only if it's likely to succeed or we're at max pw