Merge branch 'release/sprint_zero'

* release/sprint_zero: (22 commits)
  Implemented [a]sync stream classes, ready for friendly resource-loader APIs.
  Fixed a bug in CFI component parsing. - I was conflating the UTF-8 byte-string index and the UTF string's character index. This has been remedied by having the CFI::Component parser operate only on the UTF-8 representation of the string. Added a number of new files, not many of which are actually in use yet, but which will form the basis of a proper loading system.
  Fixed a character-encoding issue when opening XML files.
  Object Preprocessor now works as intended. Also fixed some problems in the string class-- the vararg constructor was being preferred to implicit type conversion, so it's been removed. That then led to a number of coding bugs being discovered, which have now been fixed.
  Unit tested (and thus fixed) SwitchPreprocessor.
  Added a preprocessor class for <object> tags.
  Tweaked Filter interface slightly and implemented an epub:switch preprocessor filter.
  Implemented media handlers, both loaded from OPF and installed explicitly by the library's user.
  Fixed a small bug in the navigation table storage map: index by type, not title.
  Fixed an initializer error which apparently doesn't happen under Xcode 4.5.2.
  Next SpineItem  pointer reset bug fix
  Metadata is now working correctly and unit-tested. The Package class has been split into a base class named PackageBase and a high-level class named Package. This is to separate out high-level API such as Title(), TableOfContents(), Attribution() and the like from the many lower-level functions which deal directly with the contained data types. Note that there's a failing unit test in here for the TOC navigation table. I'll be looking at that directly.
  Made ArchiveReader::read() and ArchiveZipReader::read() const
  Updated components to use UTF string class, fixed a bunch of bugs which appeared as a result, and got all the unit tests working.
  Fixed a bug with zip file paths beginning with a path separator.
  New API for loading data from Manifest/Spine items:   ePub3::Package::ReaderAtRelativePath() now returns ePub3::ArchiveReader*   ePub3::Package::XmlReaderAtRelativePath() replaces old ReaderAtRelativePath() and returns ePub3::XmlArchiveReader*   ePub3::ManifestItem new API:     BaseHref() returns only the path part of Href() 	Reader() returns an ePub3::ArchiveReader*
  Built in an iOS version of curl, recreated iOS target, and all now builds there correctly.
  Added IRI class based on Google URL (which is itself inlined).
  Added TestData directory to the epub-sdk project with sample .epub file Replaced reference to the absolute location of the the ..dune..epub to relative reference to childrens-lit…epub in unit tests
  updated .gitignore (no actual change)
  ...
Updated copyright and contributor information.
Merge branch 'release/0.2'

* release/0.2:
  Updated CONTRIBUTORS for at-launch non-monetary contributors and added AUTHORS, which could probably be scripted based on the git commit history.
  Updated license header to correctly attribute copyright to Readium Foundation and contributors.
  there was a merge problem, so trying to sort out the submodule state...
  Added DAISY Consortium to list of contributors. NOTE: working from develop branch of SDK submodule from LauncherOSX.
  Updated copyright and contributor information.
  Removed curl for iOS (no longer used) and tweaked build settings.
  Moved Xcode project files into Platform/Apple. New platform-specific build files will be placed inside this folder.
  Implemented some basic localization features, primarily aimed at handling alternate-script metadata extensions.
  Fixed problem where iOS Release builds were defining USING_ICU == 1
  Fixed iOS linker error. • Had forgotten I was in a C++ file when declaring the external ObjC function. Added "C" to the extern declaration so all should be working now.
  Another error from the static analyzer that I thought I'd fixed in the last round.
  Fixed a couple of errors flagged by the static analyzer.
  Solved issues causing build failure for iOS devices (including implicit cast warnings).
  Add ring_buffer.cpp to the iOS target.
  A few API-breaking changes: • Locator is gone. Use paths to access ePub archives and epub3 (i.e. IRI::gEPUBScheme) URLs to access documents. • New ByteStream API has covers in the most useful places. The following all return an appropriate synchronous ByteStream instance:   • ManifestItem::Reader() [now returns a ByteStream instead of an ArchiveReader].   • Library::ReadStreamForEPubURL() [new API].   • PackageBase::ReadStreamForItemAtPath() [new API].   • Package::ReadStreamForRelativePath() [new API].   • Container::ReadStreamAtPath() [new API].   • Archive::ByteStreamAtPath() [new API, implemented by ZipArchive]. • You can ask a Library object to give you a ByteStream for a full epub3:// URL, provided the requisite package has been loaded into the MainLibrary. This includes URLs pointing directly at sub-paths of the container archive and URLs containing only a CFI, i.e. epub3://<unique-id>/#epubcfi(/6/4[ch01]!). Support for file:// URLs directed at .epub files with CFIs is not yet supported, but is on the list.

Conflicts:
	CONTRIBUTORS
Merge branch 'release/0.3'

* release/0.3:
  RunLoop implemented on Mac platforms: next step is to integrate into ByteStream, then implement on Android + Windows.
  Documented everything in the ePub3 side of things with the exception of 'string' and 'ByteStream'. I'm not going to comment 'string' much, though.
  More documentation
  Cleaned up documentation, created proper modules, added a Doxyfile I've been using.
  Fixes and unit tests for font obfuscation. Note that the content filters must currently be applied manually; the generic content-loading system with filter application is not yet implemented.
  More documentation, slight tweak to stringification of XML nodes returned from XPath evaluation in XPathWrangler::Strings()
  LOTS of header documentation.
  Fixing nav table parsing
Merge branch 'release/0.4'

* release/0.4:
  restored the Dynamic Library Install Name Removed one argument constructor from NavigationTable
  Cleared Dynamic Library Install Name setting
  Added SurceHref property to NavTable
  Updated project to use header files placed into a platform-specific 'include' folder hierarchy. Also added scripts to automatically generate per-platform include folder, with build processes for Apple & Android each regenerating headers before building.
  added href tot nav table
  Fixed some errors appearing on iOS ARM builds.
  Android build now uses ALooper as the basis of its RunLoop implementation. Pure pthread & condition variable version remains in run_loop_generic.cpp
  Fixed problems with utfstring, now all platforms will use utf8_cpp unless UTF_USE_ICU is defined (which it isn't, at present). Note that Android still builds in ICU at present, so it's still quite large.
  Now builds using Android SDK and gcc 4.7
  Now compiles using NDK release 8e
  More Android compatibility changes
  Partial implementation of Android support.
  Updated Doxyfile to generate files with a .xhtml extension (ready for online publishing).
  Last of the API documentation is complete-- woohoo!
  AsyncByteStream updated to be RunLoop-based.
modify absolut path to relavent path for generate doxygen file
Updated documeuntation for 0.4 release.
Merge branch 'hotfix/0.4.1' into develop

* hotfix/0.4.1:
  Updated documeuntation for 0.4 release.
  modify absolut path to relavent path for generate doxygen file
  Updated copyright and contributor information.