Added arguments and default arguments.
Also fixed some little bugs.