Refactoring Post model

Continuing on from https://github.com/discourse/discourse/pull/955 and conversations on meta with @eviltrout ...

Move `Post` create callbacks to `PostCreate`
Extract `Post` validations
Move `stripped_length_validator` to `lib/validators`