Finish generalizing
Fix some more things up