long way towards symmetric search

capture movegen bloated, but speed justifies it
cannot sync w/o this