Bug fix basic.egcd, basic.min and basic.max

I'm resubmitting this pull request from a new branch. Git flow style.

Recap of changes.
- Added more test cases for basic.egcd(), basic.max() and basic.min()
- Returns +Infinity and -Infinity if empty object is passed to basic.min() and basic.max()
- Fixed bug with basic.egcd() relating to #90
- Bug fix for #87 Used for loop instead of Math.max.apply() and Math.min.apply() to avoid `max call stack size exception.
- Add `*.*~` files to .gitignore

Previous pull request https://github.com/sjkaliski/numbers.js/pull/94