The thesis studies some theoretical and applied problems in the mechanism design. In the first part we study how a group of agents could organize themselves to collect resources to introduce a common governance system which will enforce their trade agreements (contracts) with each other. Governance systems dealing with those issues usually have some costs of functioning (e.g., wages of enforcers, costs of design of codes and statutes, etc.) and they are also characterized by non-rivalry (i.e. an additional member does not reduce its availability to all others). Thus, studying their feasibility is equivalent to the problem of provision of (excludable) public goods. The first chapter analyzes this problem in the following setup: A large population of agents heterogeneous in strength endowments could match one-shot to trade with each other and there exists a status-quo asymmetric punishment system that imposes a punishment for cheating on weak agents but not on strong ones. There is an opportunity to build a punishment institution that will impose punishment for cheating independently of agents’ identities; however, it requires a collective investment into its capacity up-front. The main results of the analysis are the following: (i) the rate of cheating is always positive in contracts subject to asymmetric punishment and it is zero in contracts subject to impartial punishment, i.e. if the latter were not costly, it would always be socially beneficial to have only a symmetric governance system; (ii) sometimes strong agents receive rents under the asymmetric system, but sometimes it is the weak who benefit from it; (iii) there exists an equilibrium of the contribution game where all agents, independently of their strength, pay to the fixed cost of the symmetric system provided it excludes non-contributors from enforcement of their contracts with contributors, i.e. with the threat of exclusion of non-payers it is always possible to collect resources to cover costs of the efficient contract enforcement institution. In the second part of my thesis, which constitutes a joint paper with Martin Hellwig, we work out some details on whether under correlated information agents’ beliefs about the state of nature, which a third party may observe, are also fully informative about agents’ information on which their beliefs are conditioned. This property of agents’ beliefs plays a crucial role in the models of surplus extraction where agents' payoff parameters are privately known. Some recent literature (Heifetz and Neeman, Econometrica, 2006) demonstrated that when one goes beyond a standard model of information where agents derive their beliefs from a common prior given their payoff parameter and allows for a rich set of agents' beliefs, then, under a wide range of circumstances, agents’ beliefs could not reveal unequivocally their information, i.e., one could not learn agents' payoffs from their beliefs. Hence mechanisms exploiting uniqueness of payoffs to beliefs are not available anymore. We demonstrate the opposite result -- provided that agents’ beliefs are conditional distributions given their information (derived from common or private priors) and provided a mild restriction on the dimensionality of information variables is verified (specifically agents' own information should be of a lower dimension than dimensionality of their uncertainty about which they form beliefs). Then, in a wide range of circumstances, agents' information could be recovered from their beliefs. The result hinges upon Whitney Embedding Theorem and our treating of beliefs as being endogenously derived from agents' observations. In the third part of the thesis we deal with the following issue: In the existing mechanism design literature, different types of an agent, i.e., different states in which he has different sets of information, are usually treated as "redundant" if they have the same belief hierarchies about others' payoffs (i.e., beliefs about others' payoffs, beliefs about others' beliefs about everyone else’s payoff, etc.). Consequently most of the results in the existing literature have been shown for subsets of type spaces up to redundancy. Here we demonstrate that this approach is not always correct. If we model explicitly agents' redundant characteristics, there may exist social choice functions which are not implementable when those characteristics are not considered but which are implementable within a richer model taking into account redundant information. The reason for this is that treating some types as redundant is done by marginalizing beliefs about a richer set of uncertainty into beliefs about something of a lower dimension. This causes loss of information about correlations in a richer environment. These correlations are sometimes valuable for implementation as the mechanism designer could condition those agents' allocations