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.