/// <summary>
		/// Initializes a new instance of the HttpResponse class
		/// </summary>
		/// <param name="message"></param>
		public HttpResponse(HttpMessage message) : base(message)
		{
			_statusLine = HttpStatusLine.Parse(base.FirstLine);
//			this.InitHeaders(); // no very bad!!! using a message as a constructor means we've received a message and we're creating a response around it, so it will already have headers!!!
		}
		/// <summary>
		/// Initializes a new instance of the HttpResponse class
		/// </summary>
		/// <param name="status"></param>
		public HttpResponse(HttpStatus status) : base()
		{
			_statusLine = new HttpStatusLine(status);
			this.InitHeaders();
		}
		/// <summary>
		/// Initializes a new instance of the HttpResponse class
		/// </summary>
		public HttpResponse() : base()
		{
			_statusLine = new HttpStatusLine(new OkStatus()); // 200 OK
			this.InitHeaders();
		}
        /// <summary>
        /// Initializes a new instance of the HttpResponse class
        /// </summary>
        /// <param name="message"></param>
        public HttpResponse(HttpMessage message) : base(message)
        {
            _statusLine = HttpStatusLine.Parse(base.FirstLine);
//			this.InitHeaders(); // no very bad!!! using a message as a constructor means we've received a message and we're creating a response around it, so it will already have headers!!!
        }
 /// <summary>
 /// Initializes a new instance of the HttpResponse class
 /// </summary>
 /// <param name="status"></param>
 public HttpResponse(HttpStatus status) : base()
 {
     _statusLine = new HttpStatusLine(status);
     this.InitHeaders();
 }
 /// <summary>
 /// Initializes a new instance of the HttpResponse class
 /// </summary>
 public HttpResponse() : base()
 {
     _statusLine = new HttpStatusLine(new OkStatus());             // 200 OK
     this.InitHeaders();
 }