-------------------------------------------------
version 2.0.1, 2024-11-22
- import_firesting():		corrected a bug when a channel was turned off but still displayed in text file.
-------------------------------------------------
version 2.0.0, 2024-07-18
- calc_pcrit() and plot_pcrit():	updated so that the classical "breakpoint" method of analysis is used by default. If other methods, or all methods are desired, they should be specified with the "method" parameter.
- calc_pcrit() and plot_pcrit():	for convenience, the output of calc_MO2() can now be inputted directly into these Pcrit functions with the mo2_data parameter, instead of adding po2 and mo2 parameters separately.
- closed():		clarified the usefulness of this function in documentation. Useful for estimating Pcrit trial length. Not ideal for analyzing collected data.
- calc_MO2():		corrected the "binning" behavior to not reuse data in multiple bins when a dataframe was provided for bin_width.
- make_bins():		(hopefully) clarified documentation and how to use make_bins(). Reversed order of rows from previous versions.
- conv_o2():	added support for nmol_per_ml
- For your convenience, added aliases so that calc_mo2() will work as calc_MO2() (for when you forget to capitalize the MO2 part. Same for Q10(), max_MO2(), and scale_MO2(). calc_q10() is now an alias for Q10().
- conv_o2():	No longer breaks when sal=NULL, but instead converts sal to 35psu (the default) and sends out a warning.
-------------------------------------------------
version 1.5.0, 2024-02-09
- import_pyroscience_workbench():	new function: Import data from Pyroscience Workbench.
- import_firesting():	updated documentation to reflect the deprecated status of the software this supports.
-------------------------------------------------
version 1.4.0, 2023-07-06
- adj_by_temp():		new function: Predict biological parameters at a new temperature.
- Q10():				fixed an error in one of the examples
- Q10():				improved documentation to be explicit that any temperature-dependent biological value could be used (e.g. Pcrit) and not just rates.
- calc_MO2():			improved readability of the documentation
-------------------------------------------------
version 1.3.0, 2021-03-05
- calc_E():				new function: Calculate E temperature coefficient.
- calc_alpha():			includes an added parameter (avg_top_n) to calculate alpha based on the average of a defined number of observations rather than just the single highest value.
- calc_b():				added a "b0_start" parameter so the user can adjust the starting b0 value for the "nls" method when working with a tricky dataset to converge. Thanks to Alyssa Andres for the suggestion.
- calc_b():				can now handle 0 values in either the mass or MO2 parameters when using the "lm" mode.
- calc_MO2():			added a TEMP_MEAN column to the output data frame so that temperature within bins is also included. Thanks to Britney Firth for the suggestion.
- plot_pcrit():			improved the clarity of the plot by color coordinating the plot title.
- Q10():				the method of Q10 determination was changed from a nonlinear regression of R_vec values to a linear regression of log10(R_vec) values. This improves the accuracy and speed of determining the best Q10 value.
-------------------------------------------------
version 1.2.1, 2020-11-04
- import_*():			improved compatibility with importing data files containing non-UTF-8 characters.
-------------------------------------------------
version 1.2.0, 2020-08-14
- calc_alpha():			new function: Calculate the oxygen supply capacity (alpha).
- calc_pcrit():			added functionality to calculate Pcrit-alpha and Pcrit-LLO.
- calc_pcrit():			added a "return_models" parameter to optionally return a list of converged model parameters for subsequent personalized analyses. Thanks to Stefan Mucha for the suggestion.
- plot_pcrit():			added functionality to plot Pcrit-alpha and Pcrit-LLO.
-------------------------------------------------
version 1.1.0, 2020-04-29
- calc_b():				added a "method" parameter, which allows the user to use a linear regression of log10 values rather than the default nonlinear regression, if desired.
- plot_pcrit():			allows plotting of just the MO2 v PO2 if Pcrit cannot be calculated.
-------------------------------------------------
version 1.0.2, 2020-01-24
- import_presens():		fixes an error when Fibox 4 files were exported with PreSens Datamanager.
-------------------------------------------------
version 1.0.1, 2019-09-26
- import_firesting():		now can tolerate files with less than four channels calibrated.
-------------------------------------------------
version 1.0.0, 2019-05-24
- calc_pcrit():			new function: Calculate Pcrit (hypoxia tolerance)
- plot_pcrit():			new function: Plot Pcrit (hypoxia tolerance)
- calc_b():			output changed from a numeric value for b to a list of 1. the b value and 2. a vector of b0 values
-------------------------------------------------
version 0.7.0, 2018-08-12
- make_bins():			new function: Make time bins for MO2 calculations.
- calc_b():			improved the ability to converge on the b value.
- calc_MO2():			fixed an issue where an error was returned if the bin_width dataframe had a 0 value.
- calc_b():			fixed an issue where the returned value was incorrect.
- import_firesting():		fixed an issue with the example.
- guess_TA():			fixed an issue where an error message would improperly say salinity was outside of bounds when temperature was outside of bounds.
-------------------------------------------------
version 0.6.0, 2018-01-23
- import_presens():		added support for PreSens SDR SensorDish Reader txt files
- calc_MO2():			added support to enter a data frame as an argument for the "bin width" parameter
- calc_MO2():			fixed an issue where an error would be returned if an entire bin was full of O2 = NA
-------------------------------------------------
version 0.5.0, 2017-11-01
- import_firesting():		now supports "Firesting Logger" software and 1st generation FireStingO2 meter
- Q10():			option added to return an nls object with the model fit if vectors are provided
- Q10():			fixed a bug where the returned value was 1 when the first two elements of T_vec were identical
-------------------------------------------------
version 0.4.0, 2017-05-27
- calc_MO2():			parameter added: "pH" which allows pH data to be summarized along with oxygen and duration data for each bin
- calc_MO2():			parameter added: "time" to include time mean and range in output
- Q10():			added new functionality allowing a vector of rate and temperature values to be input to return the best fitting Q10 value
- calc_MO2():     		columns MEAN_DURATION, MEAN_O2, and MEAN_PH were renamed to DUR_MEAN, O2_MEAN, and PH_MEAN, respectively
- calc_MO2():     		the DUR_RANGE column in the returned data frame is no longer rounded
- calc_MO2():     		"bad" data identified by the parameter "good_data" now split their bin so that linear regressions are not fit through data that contain bad observations in the middle
- conv_o2():			added support for "volumes_percent"
- conv_nh4():			conv_NH4() was renamed and includes support for "mg_NH3" and "umol_NH3"
- predict_nh3():		predict_NH4() was renamed and now returns a list of NH3, NH4, and TAN
-------------------------------------------------
version 0.3.1, 2016-12-31
- calc_MO2():			parameter added: "good_data" which allows identified O2 observations to be excluded from analyses
-------------------------------------------------
version 0.3.0, 2016-11-29
- calc_b():			new function: Calculate the metabolic scaling coefficient, b
- calc_MO2():			new function: Calculate metabolic rate
- conv_resp_unit():		new function: Convert units related to respirometry
- import_firesting():		new function: Import data from a FireSting O2 transmitter
- conv_o2():			added support for ug_per_l and ug_per_kg
- flush_o2():			now returns just the missing value(s) rather than the missing value(s) within a list
- flush_water():		now returns just the missing value(s) rather than the missing value(s) within a list
- flush_water():		now gives a meaningful error message when parameters have a length >1 and plot = TRUE
- Q10():			now returns just the missing value(s) rather than the missing value(s) within a list
- scale_MO2():			now returns just the missing value(s) rather than the missing value(s) within a list
- import_presens():		improved efficiency
- import_witrox():		improved efficiency
- predict_pH():			improved efficiency
-------------------------------------------------
version 0.2.0, 2016-10-07
- closed():			new function: Closed respirometry
- import_presens():		new function: Import data from a PreSens O2 transmitter
- import_witrox():		new function: Import data from a Loligo Systems Witrox transmitter
- scale_MO2():			new function: Scale metabolic rate by size
- conv_o2():			added support for mmol_per_l and mmol_per_kg
- flush_o2():			added support for calculating any parameter from the others, not just calculating final O2.
- mean_pH():			returns an NA rather than error when pH = NULL
- co2_*.R():			improved documentation
- flush_water():		improved documentation
-------------------------------------------------
version 0.1.2, 2016-09-02
- guess_TA():			now allows calculations if salinity is <= 5 psu outside the bounds, but with a warning.
- guess_TA():			fixed a bug where an error occurred if any NAs were provided
- predict_pH():			fixed a bug where an error occurred if any NAs were provided
-------------------------------------------------
version 0.1.1, 2016-08-23
- predict_pH():			fixed a bug where a single NA was returned if any NAs were provided
-------------------------------------------------
version 0.1.0, 2016-08-22
- co2_add():			new function
- co2_flush():			new function
- co2_rate():			new function
- conv_NH4():			new function
- conv_o2():			new function
- correct_bubble():		new function
- flush_carb():			new function
- flush_o2():			new function
- flush_water():		new function
- goal_flush_pH():		new function
- guess_TA():			new function
- guess_when():			new function
- max_MO2():			new function
- mean_pH():			new function
- min_flow():			new function
- peri_pump():			new function
- predict_NH4():		new function
- predict_pH():			new function
- Q10():			new function
- RQ():				new function