A host of fixes.

Signed-off-by: Robert Xu <robxu9@gmail.com>