/// <summary>
	    /// Create a TarArchive for writing to, using the default blocking factor
	    /// </summary>
	    /// <param name="outputStream">The <see cref="Stream"/> to write to</param>
	    /// <returns>Returns a <see cref="TarArchive"/> suitable for writing.</returns>
	    public static TarArchive CreateOutputTarArchive(Stream outputStream)
	    {
	        if ( outputStream == null ) {
	            throw new ArgumentNullException("outputStream");
	        }
			
	        var tarStream = outputStream as TarOutputStream;

	        TarArchive result;
	        if ( tarStream != null ) {
	            result = new TarArchive(tarStream);
	        }
	        else {
	            result = CreateOutputTarArchive(outputStream, TarBuffer.DefaultBlockFactor);
	        }
	        return result;
	    }