added time profiling
adding some testing with nosetests