fixing bug

Request::body is now populated with $_POST when the HTTP method is POST
and using file_get_contents("php://input") when the HTTP method is PUT.
catching warnings and other errors in order to throw exceptions when php woudn't normally do so.