wp_insert_post should have true as $wp_error parameter

Add `true` as $wp_error parameter for wp_insert_post, otherwise it returns zero instead of a WP_Error object and the checkout process is not stopped.

@mikejolley - the messages from WP_Error are not displayed or logged, making debugging this difficult. Maybe we should check WP_DEBUG and display the message if it is set to true? either that or actually use the logger in WooCommerce for the first time?
Changelog update for PR #3827
Add new 'woocommerce_pre_payment_complete' action

And an action to fire when order status != pending|on-hold|failed
Merge pull request #3830 from tivnet/master

woocommerce.php PHPDoc cleanup: correct @returns and @deprecated markup
Merge pull request #3829 from thenbrent/add-payment-complete-actions

Add new payment complete actions (to master)
Merge pull request #3827 from pmgarman/master

wp_insert_post should have true as $wp_error parameter
WOOCOMMERCE_TEMPLATE_PATH not dir, closes #3831
If no variations exist, show out of stock notice. Closes #3763.
add_to_cart_url add_to_cart_text and single_add_to_cart_text class methods allowing greater control with custom classes.

Closes #3484 and Closes #3143. Pinging @thenbrent as the handler was
originally his idea and I've killed it.

@helgatheviking In 2.1, add to cart URLs will only be used in loops, so
conditonal logic should no longer be neccessary. Single templates post
to themselves without the need for the URL.