libc: krait: optimized memmove and bcopy routines

Summary:
Depends on D271 and Depends on D272. To be stacked on top.

libc: arm: Allow optional optimization of memmove and bcopy

The libc functions memmove and bcopy are not configurable target-by-
target.  This change allows per-target optimization for best perfor-
mance.

Change-Id: Id684672fbf0bcffbe68c36a28b64186a6c2554f3

libc: krait: Implement optimized versions of memmove and bcopy

Restore a jellybean optimization for memmove and bcopy on krait.
Code has been refactored to thumb2 for consistency with the rest of
bionic libc, as well as performance and correctness.

Change-Id: I8f2f77dce4534fbce1bdf0188ab353bf34ab8637