hardware: Expose methods to locate bitstreams in given path

Refactor the getAvailablePartitions and findPartition methods and
export the static methods than simply search a path for a bitstream.
This simplifies loading bitstreams from alternate locations, so one
need not create a context for each location first.