/// <summary>
        /// Returns the current wallet state
        /// Contains the current balances, the values and the transaction history
        /// </summary>
        /// <param name="address"></param>
        /// <param name="page"> </param>
        /// <returns>The wallet details</returns>
        /// <exception cref="MetacoClientException"></exception>
        /// <remarks>
        /// Requires Authentication
        /// </remarks>
        /// <see cref="http://docs.metaco.apiary.io/#reference/transactions/transaction-broadcast/fetch-wallet-information">Online Documentation</see>
        public WalletDetails GetWalletDetails(string address, Page page)
        {
            if (string.IsNullOrEmpty(address))
                throw new ArgumentNullException("address");
            if (page == null)
                throw new ArgumentNullException("page");

            return _httpClient.Get<WalletDetails>(string.Format("transactions/{0}{1}", address, page.ToQueryString()));
        }
        /// <summary>
        /// Returns the user's orders
        /// </summary>
        /// <returns>The orders array</returns>
        /// <exception cref="MetacoClientException"></exception>
        /// <see cref="http://docs.metaco.apiary.io/#reference/orders/orders-management/request-an-order">Online Documentation</see>
        /// <remarks>Requires Authentication</remarks>
        public OrderResultPage GetOrders(Page page)
        {
            if (page == null)
                throw new ArgumentNullException("page");

            return _httpClient.Get<OrderResultPage>("orders" + page.ToQueryString());
        }