Added final functionality. May polish later in the week.