Added loads of new functions.
Added missing goal.