Numpy accelerated code

Hey there

I've had a lot of fun this week porting these codes to use numpy indexing instead of for loops. For the most part, it's given a pretty significant speed increase (of order 100x!), apart from for the MTIE functions which are still performing a little slower than I'd like. 

I tested all my codes against the existing codes, and they pass all my tests. The new numpy version passes the original test suite too, although the MTIE code seems slow for large taus (the rolling window approach I'm using may not be optimal).