just require spec_helper instead of __FILE__ hack stuff
implemented shortcuts to apply functions in the ruby core Math module to NMatrix objects
fix issue with spec having different behavior on 1.9.2 due to different ruby behavior with atan2(0,0)
Merge branch 'add_math' of https://github.com/cjfuller/nmatrix into cjfuller-add_math
Unary function operations using C map functions, working for all stypes.
Still need some work for various dtypes, specifically:
* If it's possible to determine fn(x).dtype only from x.dtype,
  fn(x).dtype should be set to that correct dtype. Otherwise, it should
  be :object. This has already been done for log, log2, and log10. It is
  also already done for the older elementwise/scalar operations. It
  still needs to be done for the new trig functions.
* Included in math.rb are some define_method calls for atan2, ldexp, and
  hypot. They have been disabled, because this method for calling them
  is not particularly Ruby-like and would require that their utilization
  always be fn(matrix,scalar) or fn(matrix,matrix). We'd also like to
  allow fn(matrix,matrix). However, the internals of fn would still work
  the same way, calling these special stype map functions.
* Note that I made a change to map which is important. Map doesn't know
  what you're going to do with it. As a result, the matrix it returns
  basically HAS to be a Ruby :object matrix. It may not affect your
  code in this particular case.
* I didn't implement a lot of the other functions you included, but I
  think it isn't hard to do so just by looking at the changes I made
  to the C/C++ code. You basically copy a few lines, substitute "log"
  with "erfc" and "LOG" with "ERFC" and you're good to go.
Merge branch 'master' into add_math
Fixed another double-free problem, this time for Yale default array
assignment (matrix constructor)
Replaced nm_register_values and nm_unregister_values with volatile VALUE
declarations in two places. This seems to work. #139
Merge branch 'master' into add_math
Trying to satisfy Travis-CI.
Bug fix to Yale intersection experimental function; restored nrm2 and
asum.
Update GC-related comments in dense_map and dense_map_pair

This removes the nm_register_values and nm_unregister_values calls completely
and adds a note for future reference about what the volatile is doing there.
Trying out forcing Travis to use GCC 4.7
Added range checking to #yale_nd_row
Merge pull request #145 from cjfuller/volatile_doc

Update GC-related comments in dense_map and dense_map_pair
Merge branch 'cjfuller-add_math' of git://github.com/mohawkjohn/nmatrix into mohawkjohn-cjfuller-add_math

Conflicts:
	ext/nmatrix/extconf.rb

Fixed optimization level conflict in extconf to use -O3
Merge branch 'mohawkjohn-cjfuller-add_math' into add_math
Possibly fixed bug in get_version_info, for writing and reading files.
Merge branch 'master' of github.com:SciRuby/nmatrix
Completed implementation of unary and binary math methods from core ruby Math
module that return a single value.

All these methods are now invokable directly on NMatrix objects, e.g. m.sin

The log method takes an optional argument (the base).  Without the argument, it
defaults to natural log.  E.g.: m.log or m.log(3).

The methods hypot, atan2, and ldexp all accept NMatrix or Numeric arguments.
Where the first argument would be a scalar, you call these through the Math
module, which has been monkeypatched to know how to deal with NMatrix objects.
E.g. m.atan2(1) or Math.atan2(1, m)

All these math methods now upcast the dtype to float64 (for purposes of uniform
interface and consistency with the core math module, which also returns a float
even when the result would be an integer).  They preserve stype.