Added FunctionButton and VoidFunctionPointers.
Modified super-abstract object build organization and shoved a few more
abstraction layers into the hiearchy.