Added a decent tests suite