Changed `average_spectra` to `average_spectra(*sp_list, **kwarg)` (to match `plot_spectra`).
Test all y values in test_average_spectra.
Fixed wrong comments about inplace copy in `Spectrum()`.
Renamed `LenghtError` to `XCompatibilityError` in `custom_exceptions`.
Implemented `check_compatible_x`, to check if two spectra can be added/subtracted.
Test that use `any(x1 == x2)` fail if the array passed is not a numpy array, but a regular array.
If the dataset gets passed an array it's converted to a `np.ndarray` as necessary.
Improved `test_copy` in test_dataset.py.
Spectrum add / sub  now use check_compatible_x.
Imporved `test_average_spectra()`
`plotter_helper.average_spectra()` now returns standard errors and standard deviations.

    Create average spectra from a list of spectra.

    Metadata is taken from the first spectrum. Existing y_errors are over-
    written, existing x_errros are not modified.

    Parameters
    ----------
    sp_list : Array of Spectrum objects

    ddof :  int = 1
        Delta Degrees of fredom. The standard deviation is calcualted as
        s = sqrt(1/(N - ddof)*Sum(avg(x)-x_i)), where N is the number of elements

    error_type = : {'st_dev', 'st_err'} = 'st_err'
        The type of error (uncertantiy) returned.
        'st_dev' is the standard deviation of the sample
        'st_err' is the standard  error (st_dev/sqrt(n))
`plotter_helper.average_spectra()` now returns standard errors and standard deviations.

    Create average spectra from a list of spectra.

    Metadata is taken from the first spectrum. Existing y_errors are over-
    written, existing x_errros are not modified.

    Parameters
    ----------
    sp_list : Array of Spectrum objects

    ddof :  int = 1
        Delta Degrees of fredom. The standard deviation is calcualted as
        s = sqrt(1/(N - ddof)*Sum(avg(x)-x_i)), where N is the number of elements

    error_type = : {'st_dev', 'st_err'} = 'st_err'
        The type of error (uncertantiy) returned.
        'st_dev' is the standard deviation of the sample
        'st_err' is the standard  error (st_dev/sqrt(n))
This closes SpectralGroup/spectraplotpy#34
Merge branch 'stderr' of https://github.com/ajasja/spectraplotpy into stderr
Warning printed if only one spectrum passed to `average_spectra()`.

TODO: How to test that a warning was printed...
Added an Ipython notebok interactive example.
Added `Spectrum.errorfill()` which shades the error region.

Also added example IPython notebook.
Added tests & fixed two bugs: If there are no errors and if an alpha_fill option is passed.
Updated the errorbar.ipynb example.
Some linting in Spectrum.py.
Renamed members of dataset for easier code completition and navigation.

Closes SpectralGroup/spectraplotpy#38.