Implement N+1-bit multiplication for signed ceiling and floor.

Also restructure the ceiling/floor generator to handle the different
dividend signs separately.