Update with suggestions from philsturgeon
diff --git a/system/libraries/Email.php b/system/libraries/Email.php
index 5158e85..1066535 100644
--- a/system/libraries/Email.php
+++ b/system/libraries/Email.php
@@ -559,7 +559,7 @@
 	 */
 	public function set_newline($newline = "\n")
 	{
-		$this->newline = ($newline !== "\n" AND $newline !== "\r\n" AND $newline !== "\r") ? "\n" : $newline;
+		$this->newline = in_array($newline, array("\n", "\r\n", "\r")) ? $newline : "\n";
 		return $this;
 	}
 
@@ -602,7 +602,7 @@
 	 */
 	protected function _get_message_id()
 	{
-		$from = str_replace(array('>', '<'), array('', ''), $this->_headers['Return-Path']);
+		$from = str_replace(array('>', '<'), '', $this->_headers['Return-Path']);
 
 		return  "<".uniqid('').strstr($from, '@').">";
 	}
@@ -837,7 +837,7 @@
 		// Standardize newlines
 		if (strpos($str, "\r") !== FALSE)
 		{
-			$str = str_replace(array("\r\n", "\r"), array("\n", "\n"), $str);
+			$str = str_replace(array("\r\n", "\r"), "\n", $str);
 		}
 
 		// If the current word is surrounded by {unwrap} tags we'll
@@ -969,7 +969,7 @@
 	 */
 	protected function _build_message()
 	{
-		if ($this->wordwrap === TRUE && $this->mailtype !== 'html')
+		if ($this->wordwrap === TRUE AND $this->mailtype !== 'html')
 		{
 			$this->_body = $this->word_wrap($this->_body);
 		}
@@ -1305,7 +1305,7 @@
 
 		$this->_build_headers();
 
-		if ($this->bcc_batch_mode && count($this->_bcc_array) > 0 && count($this->_bcc_array) > $this->bcc_batch_size)
+		if ($this->bcc_batch_mode AND count($this->_bcc_array) > $this->bcc_batch_size)
 		{
 			return $this->batch_bcc_send();
 		}