WIP / update from jordansissel/fpm 1f6b84c547382485271a059a6c55ff9256a82a0b

Major update covering about ~2 years of fpm development.