First commit of a bin packing class, in preparation of a better TextureFont packer. This version supports more than 1 bin per packer, but since this complicates things, I will revert this to a single bin packer.
Revised and much simplified BinPacker, capable of packing a single bin until it's full. Will throw on error. Returns a list of Area's, which have the exact same order as the input list.
Added in-place packing using a vector of Area*. This allows you to pack stuff efficiently without copying anything.
Re-factored the BinPacker classes, and added a MultiBinPacker. This will allow you to choose what kind of packing you prefer. The MultiBinPacker will create multiple bins if one isn't enough to fit all rectangles, but the returned result is somewhat harder to process. Also updated the test sample to include all BinPacker types. Removed the "allowRotation", because rotating the rectangles will introduce problems if packing is done multiple times.
Replaced the output of the MultiBinPacker with a vector of BinnedAreas, which are identical to normal Areas but contain an additional parameter containing the bin number this Area was packed in. This greatly simplifies handling the output.
Added vc11 support. Fixed comments.
Merge branch 'bin_packing' of https://github.com/paulhoux/Cinder into bin_packing
Changed the sign of the fill() method, so it produces better results.