Convenient functions for Matrices

This PR addresses issue #275. A function similar to [NumPy's eye function](http://docs.scipy.org/doc/numpy/reference/generated/numpy.eye.html) is implemented.

#### TODO

- [x] Add a function for creating diagonal matrices

##### Optional
- [x] Create a function similar to [numpy.ones](http://docs.scipy.org/doc/numpy/reference/generated/numpy.ones.html)
- [x] Create a function similar to [numpy.zeros](http://docs.scipy.org/doc/numpy/reference/generated/numpy.zeros.html)
I think it's fine as it is. We can always refactor it later.

Sent from my mobile phone.
On Nov 23, 2014 10:55 PM, "Thilina Bandara Rathnayake" <
notifications@github.com> wrote:

> In src/dense_matrix.cpp:
>
> > +            }
> > +            k++;
> > +        }
> > +    } else {
> > +        k = -k;
> > +
> > +        for (unsigned j = 0; j < A.col_; j++) {
> > +            for (unsigned i = 0; i < A.row_; i++) {
> > +                if (i != (unsigned)k) {
> > +                    A.m_[i*A.col_ + j] = zero;
> > +                } else {
> > +                    A.m_[i*A.col_ + j] = v[k - k_];
> > +                }
> > +            }
> > +            k++;
> > +        }
>
> Where should I use abs(k) ?
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/sympy/csympy/pull/332/files#r20773780>.
>