Abstracted a bunch more block stuff.