Finished basic implementation. *YAY*