On the fsfs-format7 branch: make page sizes configurable.
As a result, we must allow for index page sizes to vary from
one index file to the other, i.e. need to store them.

* subversion/libsvn_fs_fs/fs.h
  (CONFIG_SECTION_IO,
   CONFIG_OPTION_BLOCK_SIZE,
   CONFIG_OPTION_L2P_PAGE_SIZE,
   CONFIG_OPTION_P2L_PAGE_SIZE): define new options
  (fs_fs_data_t): declare new page / block size members

* subversion/libsvn_fs_fs/fs_fs.c
  (read_config): read new options from config file
  (write_config): extent config file template
  (write_revision_zero): store page sizes within index files

* subversion/libsvn_fs_fs/index.h
  (svn_fs_fs__l2p_index_create,
   svn_fs_fs__p2l_index_create): add fs as parameter

* subversion/libsvn_fs_fs/index.c
  (l2p_index_header_t,
   p2l_index_header_t): add page sizes to index header structs
  (svn_fs_fs__l2p_index_create,
   svn_fs_fs__p2l_index_create): take page sizes form fs settings;
   write them to index files
  (get_l2p_header,
   get_p2l_header): read page size from index file
  (l2p_index_lookup): varible page size; more efficient lookup
  (get_p2l_page,
   svn_fs_fs__p2l_index_lookup): use page size provided in index header

* subversion/libsvn_fs_fs/pack.c
  (pack_rev_shard): adapt to API change

* subversion/libsvn_fs_fs/transaction.c
  (commit_body): ditto


git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/fsfs-format7@1434970 13f79535-47bb-0310-9956-ffa450edef68