  We present the XFaster analysis package. XFaster is a fast, iterative angular
power spectrum estimator based on a diagonal approximation to the quadratic
Fisher matrix estimator. XFaster uses Monte Carlo simulations to compute noise
biases and filter transfer functions and is thus a hybrid of both Monte Carlo
and quadratic estimator methods. In contrast to conventional pseudo-$C_\ell$
based methods, the algorithm described here requires a minimal number of
simulations, and does not require them to be precisely representative of the
data to estimate accurate covariance matrices for the bandpowers. The formalism
works with polarization-sensitive observations and also data sets with
identical, partially overlapping, or independent survey regions. The method was
first implemented for the analysis of BOOMERanG data, and also used as part of
the Planck analysis. Here, we describe the full, publicly available analysis
package, written in Python, as developed for the analysis of data from the 2015
flight of the SPIDER instrument. The package includes extensions for
self-consistently estimating null spectra and for estimating fits for Galactic
foreground contributions. We show results from the extensive validation of
XFaster using simulations, and its application to the SPIDER data set.
