Adds ability to set custom taxonomy terms on create and edit post

I couldn't get the `tax_input` paramenter of `wp_insert_post` to work reliably for some reason. As we already have the post ID at this point, `wp_set_object_terms` works fine.


`wp_set_object_terms` can also use an array of IDs or slugs, or just an ID or a slug, which should probably be handled also.

I went with the assumption that consumer will always pass an array of term names or Ids. Even for a single term.

- [x] Detect if tern names or IDs were passed, for sanitizing

Consumer could pass
```
$post['tax_input'] => array(
  'my_custom_tax' => array(
    'term_names' => array( 'My Term', 'My other Term' )
  )
)
```

or 

```
$post['tax_input'] => array(
  'my_custom_tax' => array(
    'term_ids' => array( 23,44)
  )
)
```