Renamed kwarg and fixed compatibility issue with python2

`second_order` kwarg renamed to `edge_order` to clarify proper usage of kwarg.

Tests and documentation updated.

Since the second argument is *varargs, in order to maintain compatibility with old code and compatibility with python 2.6 & 2.7, **kwargs is used, and all kwargs that are not `edge_order` raise an error.