It seems that the API.update_status() function has changed however the example code hasn't.
And It causes a 400 Bad Request.
# If the application settings are set for "Read and Write" then
# this line should tweet out the message to your account's
# timeline. The "Read and Write" setting is on https://dev.twitter.com/apps
-api.update_status('Updating using OAuth authentication via Tweepy!')
+api.update_status(status='Updating using OAuth authentication via Tweepy!')