Finished implementing all methods.  Will add stubs and templates