Added an Aligned Allocator

This is an allocator conforming to the standard allocator interface
which guarantees allocation at specified boundaries in memory.
Added a variation of c_matrix - c_matrix_aligned

ublas::c_matrix_aligned is a variation of ublas::c_matrix, which uses a
c-array implementation of a matrix and also guarantees a alignment to
specified boundaries of the c-array within.
Added the fast matrix-matrix multiplication

Added the preliminary implementation of a matrix-matrix multiplication.
This implementation uses OpenMP (use -fopenmp when compiling),
vectorization, caching mechanisms and a faster implementation of a
matrix-matrix mulitplication to boost its performance.
Updated fast_matrix_multiplcation.hpp

added namespace alias which was missing before.
Removed an unwanted, commented Line
Updated Copyright details
Initial Commit to fmm staging
Changed to BRANCH_6 algo
Revert "Changed to BRANCH_6 algo"

This reverts commit fb5beed3e6dcbefdfbe076a86d1c0aedfca59726.
Temporary commit - 09-08-2013
Renamed: fast_matrix_multiplication
Approx 0.75 times achieved
Renamed fast_matrix_multiplication.hpp
0.8 times now
Updated matrix-matrix multiplication code
Updated Matrix Multiplication Code
Merge pull request #1 from sathyamvellal/ublas_feature0004_fast_matrix_multiplication

Ublas feature0004 fast matrix multiplication