finished all planned functions, needs tweak on inclusive andor exclusive indexing and testing on edge cases, look to implement more functions