Fix core.system test

The find_device check in core.system is invalid. It could fail when same
device is supported by several platforms. In my case this happens for
Intel CPU when both AMD and Intel platforms are installed. The CPU
returned by boost::compute::system::default_device() is served by the
AMD platform, and the CPU returned by
boost::compute::system::find_device(name) is served by Intel SDK. The
only thing that could be safely asserted here is that both devices have
the same name.
Merge pull request #35 from ddemidov/fix-core-system-test

Fix core.system test
Improve the monte carlo example

This improves the monte carlo example by using the count_if()
algorithm instead of a custom kernel with atomics. Also includes
only the required headers instead of all the Boost.Compute headers.
Rename find_longest_vector example to longest_vector
Add price_cross example

This adds a new example demonstating the use of find_if() and
zip_iterator to find the point at which two vectors of price values
cross each other.
Remove extra semicolon in accumulate.hpp
Add BOOST_COMPUTE_STRINGIZE_SOURCE() macro
Add height() and width() methods to image2d
Bump Boost version requirement to 1.48

This bumps the required Boost version to 1.48 as Boost.Compute
makes use of Boost.Move which was added in version 1.48.

See issue #37.
Add FAQ to documentation
Add getenv() wrapper

This adds a getenv() wrapper which can be used to avoid having to
explicitly disable MSVC warnings when checking for environment
variables.
Implements offline kernel caching

See kylelutz/compute#21

This adds program::build_with_source() function that both creates and
builds the program for the given context with supplied source and
compile options. In case BOOST_COMPUTE_USE_OFFLINE_CACHE macro is
defined, it also saves the compiled program binary for reuse in the
offline cache located in $HOME/.boost_compute folder on UNIX-like
systems and in %APPDATA%/boost_compute folder on Windows.

All internal uses of program::create_with_source() followed by
program::build() are replaced with program::build_with_source().