addedd timeouts, timing options, and api refactored. Benchmarked, and got the api working much fast, sub 300 ms.