initial post scaffold
adds validation and slug formatting for posts