Functionals are now inherited from the return type

Allows expression like and_<stuff...>::value to be valid, by inheriting the result
of every value-returning functional from std::integral_constant<bool,ans>.
First try at basic_string
Fixed bugs in basic_string, added to_string
Changed order of examples in string_example.hpp
Added ratio support
Fixed critical bug in min_element, max_element
Improved ratio with make_rational
Added algorithm transform2
Added algorithm left_fold, right_fold
Added metafunction is_sequence
Added variadic::at, merge renamed as join
Variadic::size<Seq>::value is now a valid expr
equal_to now works with multiple numeric types
Added algorithms size, transpose, transform_many
Documentation cleanup pass
Polishing and documentation
Added doxyfile
Merge branch 'string'

Conflicts:
	examples/main.cpp
Merged string
Documented string class